472 words

javax.persistence.EntityManagerFactory - JPA interface

javax.persistence
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:
JPA 1.0
Learn how to use EntityManagerFactory in Chapter 3 of the ObjectDB/JPA manual.
void close()
Close the factory, releasing any resources that it holds.
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
Since:
JPA 1.0
Create a new application-managed EntityManager.
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
Since:
JPA 1.0
Create a new application-managed EntityManager with the specified Map of properties.
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
Since:
JPA 1.0
Access the cache that is associated with the entity manager factory (the "second level cache").
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:
JPA 2.0
Return an instance of CriteriaBuilder for the creation of CriteriaQuery objects.
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:
JPA 2.0
Return an instance of Metamodel interface for access to the metamodel of the persistence unit.
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:
JPA 2.0
Return interface providing access to utility methods for the persistence unit.
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:
JPA 2.0
Map<String,Object> getProperties()
Get the properties and associated values that are in effect for the entity manager factory.
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:
JPA 2.0
boolean isOpen()
Indicates whether the factory is open.
Indicates whether the factory is open. Returns true until the factory has been closed.
Returns:
boolean indicating whether the factory is open
Since:
JPA 1.0

This documentation page is derived (with some adjustments) from the open source JPA 2 RI (EclipseLink)
and is available under the terms of the Eclipse Public License, v. 1.0 and Eclipse Distribution License, v. 1.0.
Object Relational Mapping (ORM) JPA 2 providers include Hibernate, EclipseLink, TopLink, OpenJPA and DataNucleus.
Object DB is not an ORM JPA implementation but an Object Database for Java with built in JPA 2 support.