-
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 Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description <T> void
addNamedEntityGraph(String graphName, EntityGraph<T> entityGraph)
Add a named copy of the EntityGraph to the EntityManagerFactory.void
addNamedQuery(String name, Query query)
Define the query, typed query, or stored procedure query as a named query such that future query objects can be created from it using thecreateNamedQuery
orcreateNamedStoredProcedureQuery
method.void
close()
Close the factory, releasing any resources that it holds.EntityManager
createEntityManager()
Create a new application-managedEntityManager
.EntityManager
createEntityManager(Map map)
Create a new application-managedEntityManager
with the specified Map of properties.EntityManager
createEntityManager(SynchronizationType synchronizationType)
Create a new JTA application-managedEntityManager
with the specified synchronization type.EntityManager
createEntityManager(SynchronizationType synchronizationType, Map map)
Create a new JTA application-managedEntityManager
with the specified synchronization type and map of properties.Cache
getCache()
Access the cache that is associated with the entity manager factory (the "second level cache").CriteriaBuilder
getCriteriaBuilder()
Return an instance ofCriteriaBuilder
for the creation ofCriteriaQuery
objects.Metamodel
getMetamodel()
Return an instance ofMetamodel
interface for access to the metamodel of the persistence unit.PersistenceUnitUtil
getPersistenceUnitUtil()
Return interface providing access to utility methods for the persistence unit.Map<String,Object>
getProperties()
Get the properties and associated values that are in effect for the entity manager factory.boolean
isOpen()
Indicates whether the factory is open.<T> T
unwrap(Class<T> cls)
Return an object of the specified type to allow access to the provider-specific API.
-
-
-
Method Detail
-
createEntityManager
EntityManager createEntityManager()
Create a new application-managedEntityManager
. This method returns a newEntityManager
instance each time it is invoked. TheisOpen
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-managedEntityManager
with the specified Map of properties. This method returns a newEntityManager
instance each time it is invoked. TheisOpen
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
-
createEntityManager
EntityManager createEntityManager(SynchronizationType synchronizationType)
Create a new JTA application-managedEntityManager
with the specified synchronization type. This method returns a newEntityManager
instance each time it is invoked. TheisOpen
method will return true on the returned instance.- Parameters:
synchronizationType
- how and when the entity manager should be synchronized with the current JTA transaction- Returns:
- entity manager instance
- Throws:
IllegalStateException
- if the entity manager factory has been configured for resource-local entity managers or is closed- Since:
- Java Persistence 2.1
-
createEntityManager
EntityManager createEntityManager(SynchronizationType synchronizationType, Map map)
Create a new JTA application-managedEntityManager
with the specified synchronization type and map of properties. This method returns a newEntityManager
instance each time it is invoked. TheisOpen
method will return true on the returned instance.- Parameters:
synchronizationType
- how and when the entity manager should be synchronized with the current JTA transactionmap
- properties for entity manager- Returns:
- entity manager instance
- Throws:
IllegalStateException
- if the entity manager factory has been configured for resource-local entity managers or is closed- Since:
- Java Persistence 2.1
-
getCriteriaBuilder
CriteriaBuilder getCriteriaBuilder()
Return an instance ofCriteriaBuilder
for the creation ofCriteriaQuery
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 ofMetamodel
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 theIllegalStateException
, except forisOpen
, which will return false. Once anEntityManagerFactory
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 or null if no cache is in use - 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
-
addNamedQuery
void addNamedQuery(String name, Query query)
Define the query, typed query, or stored procedure query as a named query such that future query objects can be created from it using thecreateNamedQuery
orcreateNamedStoredProcedureQuery
method.Any configuration of the query object (except for actual parameter binding) in effect when the named query is added is retained as part of the named query definition. This includes configuration information such as max results, hints, flush mode, lock mode, result set mapping information, and information about stored procedure parameters.
When the query is executed, information that can be set by means of the query APIs can be overridden. Information that is overridden does not affect the named query as registered with the entity manager factory, and thus does not affect subsequent query objects created from it by means of the
createNamedQuery
orcreateNamedStoredProcedureQuery
method.If a named query of the same name has been previously defined, either statically via metadata or via this method, that query definition is replaced.
- Parameters:
name
- name for the queryquery
- Query, TypedQuery, or StoredProcedureQuery object- Since:
- Java Persistence 2.1
-
unwrap
<T> T unwrap(Class<T> cls)
Return an object of the specified type to allow access to the provider-specific API. If the provider's EntityManagerFactory implementation does not support the specified class, the PersistenceException is thrown.- Parameters:
cls
- the class of the object to be returned. This is normally either the underlying EntityManagerFactory implementation class or an interface that it implements.- Returns:
- an instance of the specified class
- Throws:
PersistenceException
- if the provider does not support the call- Since:
- Java Persistence 2.1
-
addNamedEntityGraph
<T> void addNamedEntityGraph(String graphName, EntityGraph<T> entityGraph)
Add a named copy of the EntityGraph to the EntityManagerFactory. If an entity graph with the same name already exists, it is replaced.- Parameters:
graphName
- name for the entity graphentityGraph
- entity graph- Since:
- Java Persistence 2.1
-
-
Traduction non disponible
Les API Java ne sont pas encore traduites en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.
Version en cache
21/08/2025 19:10:28 Cette version de la page est en cache (à la date du 21/08/2025 19:10:28) afin d'accélérer le traitement.Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la version plus récente de la page.
Document créé le 19/04/2008, dernière modification le 18/08/2025
Source du document imprimé : https://www.gaudry.be/java-api-javaee-rf-javax/persistence/entitymanagerfactory.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.