Interface EntityManagerFactory


  • public interface EntityManagerFactory
    Interface used to interact with the entity manager factory for the persistence unit.

    When the application has finished using the entity manager factory, and/or at application shutdown, the application should close the entity manager factory. Once an EntityManagerFactory has been closed, all its entity managers are considered to be in the closed state.

    Since:
    Java Persistence 1.0
    • Method Detail

      • createEntityManager

        EntityManager createEntityManager()
        Create a new application-managed EntityManager. This method returns a new EntityManager instance each time it is invoked. The isOpen method will return true on the returned instance.
        Returns:
        entity manager instance
        Throws:
        IllegalStateException - if the entity manager factory has been closed
      • createEntityManager

        EntityManager createEntityManager​(Map map)
        Create a new application-managed EntityManager with the specified Map of properties. This method returns a new EntityManager instance each time it is invoked. The isOpen method will return true on the returned instance.
        Parameters:
        map - properties for entity manager
        Returns:
        entity manager instance
        Throws:
        IllegalStateException - if the entity manager factory has been closed
      • getCriteriaBuilder

        CriteriaBuilder getCriteriaBuilder()
        Return an instance of CriteriaBuilder for the creation of CriteriaQuery objects.
        Returns:
        CriteriaBuilder instance
        Throws:
        IllegalStateException - if the entity manager factory has been closed
        Since:
        Java Persistence 2.0
      • getMetamodel

        Metamodel getMetamodel()
        Return an instance of Metamodel interface for access to the metamodel of the persistence unit.
        Returns:
        Metamodel instance
        Throws:
        IllegalStateException - if the entity manager factory has been closed
        Since:
        Java Persistence 2.0
      • isOpen

        boolean isOpen()
        Indicates whether the factory is open. Returns true until the factory has been closed.
        Returns:
        boolean indicating whether the factory is open
      • close

        void close()
        Close the factory, releasing any resources that it holds. After a factory instance has been closed, all methods invoked on it will throw the IllegalStateException, except for isOpen, which will return false. Once an EntityManagerFactory has been closed, all its entity managers are considered to be in the closed state.
        Throws:
        IllegalStateException - if the entity manager factory has been closed
      • getProperties

        Map<String,​Object> getProperties()
        Get the properties and associated values that are in effect for the entity manager factory. Changing the contents of the map does not change the configuration in effect.
        Returns:
        properties
        Throws:
        IllegalStateException - if the entity manager factory has been closed
        Since:
        Java Persistence 2.0
      • getCache

        Cache getCache()
        Access the cache that is associated with the entity manager factory (the "second level cache").
        Returns:
        instance of the Cache interface
        Throws:
        IllegalStateException - if the entity manager factory has been closed
        Since:
        Java Persistence 2.0
      • getPersistenceUnitUtil

        PersistenceUnitUtil getPersistenceUnitUtil()
        Return interface providing access to utility methods for the persistence unit.
        Returns:
        PersistenceUnitUtil interface
        Throws:
        IllegalStateException - if the entity manager factory has been closed
        Since:
        Java Persistence 2.0