|
EclipseLink 2.0.0_ 2.0.0.r3652-M1 API Reference | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface EntityManager
Interface used to interact with the persistence context.
An EntityManager instance is associated with a persistence
context. A persistence context is a set of entity instances in which for any
persistent entity identity there is a unique entity instance. Within the
persistence context, the entity instances and their life-cycle are managed.
This interface defines the methods that are used to interact with the
persistence context. The EntityManager API is used to create and
remove persistent entity instances, to find entities by their primary key,
and to query over entities.
The set of entities that can be managed by a given EntityManager
instance is defined by a persistence unit. A persistence unit defines the set
of all classes that are related or grouped by the application, and which must
be co-located in their mapping to a single database.
| Method Summary | ||
|---|---|---|
void |
clear()
Clear the persistence context, causing all managed entities to become detached. |
|
void |
clear(java.lang.Object entity)
Remove the given entity from the persistence context, causing a managed entity to become detached. |
|
void |
close()
Close an application-managed EntityManager. |
|
boolean |
contains(java.lang.Object entity)
Check if the instance belongs to the current persistence context. |
|
Query |
createNamedQuery(java.lang.String name)
Create an instance of Query for executing a named query (in the Java Persistence query language or in native SQL). |
|
Query |
createNativeQuery(java.lang.String sqlString)
Create an instance of Query for executing a native SQL statement, e.g., for update or delete. |
|
Query |
createNativeQuery(java.lang.String sqlString,
java.lang.Class resultClass)
Create an instance of Query for executing a native SQL query. |
|
Query |
createNativeQuery(java.lang.String sqlString,
java.lang.String resultSetMapping)
Create an instance of Query for executing a native SQL query. |
|
Query |
createQuery(QueryDefinition qdef)
Create an instance of Query for executing a criteria query. |
|
Query |
createQuery(java.lang.String qlString)
Create an instance of Query for executing a Java Persistence query language statement. |
|
|
find(java.lang.Class<T> entityClass,
java.lang.Object primaryKey)
Find by primary key. |
|
|
find(java.lang.Class<T> entityClass,
java.lang.Object primaryKey,
LockModeType lockMode)
Find by primary key and lock. |
|
|
find(java.lang.Class<T> entityClass,
java.lang.Object primaryKey,
LockModeType lockMode,
java.util.Map properties)
Find by primary key and lock. |
|
void |
flush()
Synchronize the persistence context to the underlying database. |
|
java.lang.Object |
getDelegate()
Return the underlying provider object for the EntityManager, if available. |
|
EntityManagerFactory |
getEntityManagerFactory()
Return the entity manager factory for the entity manager. |
|
FlushModeType |
getFlushMode()
Get the flush mode that applies to all objects contained in the persistence context. |
|
LockModeType |
getLockMode(java.lang.Object entity)
Get the current lock mode for the entity instance. |
|
java.util.Map<java.lang.String,java.lang.Object> |
getProperties()
Get the properties and associated values that are in effect for the entity manager. |
|
QueryBuilder |
getQueryBuilder()
Return an instance of QueryBuilder for the creation of Criteria API QueryDefinition objects. |
|
|
getReference(java.lang.Class<T> entityClass,
java.lang.Object primaryKey)
Get an instance, whose state may be lazily fetched. |
|
java.util.Set<java.lang.String> |
getSupportedProperties()
Get the names of the properties that are supported for use with the entity manager. |
|
EntityTransaction |
getTransaction()
Returns the resource-level transaction object. |
|
boolean |
isOpen()
Determine whether the EntityManager is open. |
|
void |
joinTransaction()
Indicate to the EntityManager that a JTA transaction is active. |
|
void |
lock(java.lang.Object entity,
LockModeType lockMode)
Set the lock mode for an entity object contained in the persistence context. |
|
void |
lock(java.lang.Object entity,
LockModeType lockMode,
java.util.Map properties)
Set the lock mode for an entity object contained in the persistence context. |
|
|
merge(T entity)
Merge the state of the given entity into the current persistence context. |
|
void |
persist(java.lang.Object entity)
Make an entity instance managed and persistent. |
|
void |
refresh(java.lang.Object entity)
Refresh the state of the instance from the database, overwriting changes made to the entity, if any. |
|
void |
refresh(java.lang.Object entity,
LockModeType lockMode)
Refresh the state of the instance from the database, overwriting changes made to the entity, if any, and lock it with respect to given lock mode type. |
|
void |
refresh(java.lang.Object entity,
LockModeType lockMode,
java.util.Map properties)
Refresh the state of the instance from the database, overwriting changes made to the entity, if any, and lock it with respect to given lock mode type. |
|
void |
remove(java.lang.Object entity)
Remove the entity instance. |
|
void |
setFlushMode(FlushModeType flushMode)
Set the flush mode that applies to all objects contained in the persistence context. |
|
|
unwrap(java.lang.Class<T> cls)
Return an object of the specified type to allow access to the provider-specific API. |
|
| Method Detail |
|---|
void persist(java.lang.Object entity)
entity -
EntityExistsException - if the entity already exists. (The EntityExistsException may
be thrown when the persist operation is invoked, or the
EntityExistsException or another PersistenceException may be
thrown at flush or commit time.)
java.lang.IllegalStateException - if this EntityManager has been closed.
java.lang.IllegalArgumentException - if not an entity
TransactionRequiredException - if invoked on a container-managed entity manager of type
PersistenceContextType.TRANSACTION and there is no
transaction.<T> T merge(T entity)
entity -
java.lang.IllegalStateException - if this EntityManager has been closed.
java.lang.IllegalArgumentException - if instance is not an entity or is a removed entity
TransactionRequiredException - if invoked on a container-managed entity manager of type
PersistenceContextType.TRANSACTION and there is no
transaction.void remove(java.lang.Object entity)
entity -
java.lang.IllegalStateException - if this EntityManager has been closed.
java.lang.IllegalArgumentException - if not an entity or if a detached entity
TransactionRequiredException - if invoked on a container-managed entity manager of type
PersistenceContextType.TRANSACTION and there is no
transaction.
<T> T find(java.lang.Class<T> entityClass,
java.lang.Object primaryKey)
entityClass - primaryKey -
java.lang.IllegalStateException - if this EntityManager has been closed.
java.lang.IllegalArgumentException - if the first argument does not denote an entity type or the
second argument is not a valid type for that entity's primary
key
<T> T find(java.lang.Class<T> entityClass,
java.lang.Object primaryKey,
LockModeType lockMode)
entityClass - primaryKey - lockMode -
java.lang.IllegalArgumentException - if the first argument does not denote an entity type or the
second argument is not a valid type for that entity's primary
key or is null
TransactionRequiredException - if there is no transaction and a lock mode other than NONE is
set
OptimisticLockException - if the optimistic version check fails
PessimisticLockException - if pessimistic locking fails and the transaction is rolled
back
LockTimeoutException - if pessimistic locking fails and only the statement is rolled
back
PersistenceException - if an unsupported lock call is made
<T> T find(java.lang.Class<T> entityClass,
java.lang.Object primaryKey,
LockModeType lockMode,
java.util.Map properties)
entityClass - primaryKey - lockMode - properties - standard and vendor-specific properties and hints
java.lang.IllegalArgumentException - if the first argument does not denote an entity type or the
second argument is not a valid type for that entity's primary
key or is null
TransactionRequiredException - if there is no transaction and a lock mode other than NONE is
set
OptimisticLockException - if the optimistic version check fails
PessimisticLockException - if pessimistic locking fails and the transaction is rolled
back
LockTimeoutException - if pessimistic locking fails and only the statement is rolled
back
PersistenceException - if an unsupported lock call is made
<T> T getReference(java.lang.Class<T> entityClass,
java.lang.Object primaryKey)
EntityNotFoundException when the instance state is first
accessed. (The persistence provider runtime is permitted to throw
EntityNotFoundException when getReference(java.lang.Class, java.lang.Object) is called.)
The application should not expect that the instance state will be
available upon detachment, unless it was accessed by the application
while the entity manager was open.
entityClass - primaryKey -
java.lang.IllegalStateException - if this EntityManager has been closed.
java.lang.IllegalArgumentException - if the first argument does not denote an entity type or the
second argument is not a valid type for that entity's primary
key
EntityNotFoundException - if the entity state cannot be accessedvoid flush()
java.lang.IllegalStateException - if this EntityManager has been closed.
TransactionRequiredException - if there is no transaction
PersistenceException - if the flush failsvoid setFlushMode(FlushModeType flushMode)
flushMode -
java.lang.IllegalStateException - if this EntityManager has been closed.FlushModeType getFlushMode()
java.lang.IllegalStateException - if this EntityManager has been closed.
void lock(java.lang.Object entity,
LockModeType lockMode)
entity - lockMode -
java.lang.IllegalStateException - if this EntityManager has been closed.
PersistenceException - if an unsupported lock call is made
java.lang.IllegalArgumentException - if the instance is not an entity or is a detached entity
TransactionRequiredException - if there is no transaction
void lock(java.lang.Object entity,
LockModeType lockMode,
java.util.Map properties)
entity - lockMode -
PersistenceException - if an unsupported lock call is made
java.lang.IllegalArgumentException - if the instance is not an entity or is a detached entity
TransactionRequiredException - if there is no transactionvoid refresh(java.lang.Object entity)
entity -
java.lang.IllegalStateException - if this EntityManager has been closed.
java.lang.IllegalArgumentException - if not an entity or entity is not managed
TransactionRequiredException - if invoked on a container-managed entity manager of type
PersistenceContextType.TRANSACTION and there is no
transaction.
EntityNotFoundException - if the entity no longer exists in the database.
void refresh(java.lang.Object entity,
LockModeType lockMode)
entity - lockMode -
java.lang.IllegalArgumentException - if the instance is not an entity or the entity is not managed
TransactionRequiredException - if there is no transaction
EntityNotFoundException - if the entity no longer exists in the database
PessimisticLockException - if pessimistic locking fails and the transaction is rolled
back
LockTimeoutException - if pessimistic locking fails and only the statement is rolled
back
PersistenceException - if an unsupported lock call is made
void refresh(java.lang.Object entity,
LockModeType lockMode,
java.util.Map properties)
Portable applications should not rely on the standard timeout hint. Depending on the database in use and the locking mechanisms used by the provider, the hint may or may not be observed.
entity - lockMode - properties - standard and vendor-specific properties and hints
java.lang.IllegalArgumentException - if the instance is not an entity or the entity is not managed
TransactionRequiredException - if there is no transaction
EntityNotFoundException - if the entity no longer exists in the database
PessimisticLockException - if pessimistic locking fails and the transaction is rolled
back
LockTimeoutException - if pessimistic locking fails and only the statement is rolled
back
PersistenceException - if an unsupported lock call is madevoid clear()
java.lang.IllegalStateException - if this EntityManager has been closed.void clear(java.lang.Object entity)
entity -
java.lang.IllegalArgumentException - if the instance is not an entityboolean contains(java.lang.Object entity)
entity -
true if the instance belongs to the current
persistence context.
java.lang.IllegalStateException - if this EntityManager has been closed.
java.lang.IllegalArgumentException - if not an entityLockModeType getLockMode(java.lang.Object entity)
entity -
TransactionRequiredException - if there is no transaction
java.lang.IllegalArgumentException - if the instance is not a managed entity and a transaction is
activejava.util.Map<java.lang.String,java.lang.Object> getProperties()
java.util.Set<java.lang.String> getSupportedProperties()
Query createQuery(java.lang.String qlString)
qlString - a Java Persistence query language query string
java.lang.IllegalStateException - if this EntityManager has been closed.
java.lang.IllegalArgumentException - if query string is not validQuery createQuery(QueryDefinition qdef)
qdef - a Criteria API query definition object
java.lang.IllegalArgumentException - if the query definition is found to be invalidQuery createNamedQuery(java.lang.String name)
name - the name of a query defined in metadata
java.lang.IllegalStateException - if this EntityManager has been closed.
java.lang.IllegalArgumentException - if a query has not been defined with the given nameQuery createNativeQuery(java.lang.String sqlString)
sqlString - a native SQL query string
java.lang.IllegalStateException - if this EntityManager has been closed.
Query createNativeQuery(java.lang.String sqlString,
java.lang.Class resultClass)
sqlString - a native SQL query stringresultClass - the class of the resulting instance(s)
java.lang.IllegalStateException - if this EntityManager has been closed.
Query createNativeQuery(java.lang.String sqlString,
java.lang.String resultSetMapping)
sqlString - a native SQL query stringresultSetMapping - the name of the result set mapping
java.lang.IllegalStateException - if this EntityManager has been closed.void joinTransaction()
java.lang.IllegalStateException - if this EntityManager has been closed.
TransactionRequiredException - if there is no transaction.<T> T unwrap(java.lang.Class<T> cls)
cls - the class of the object to be returned. This is normally
either the underlying EntityManager implementation class or an
interface that it implements.
PersistenceException - if the provider does not support the call.java.lang.Object getDelegate()
java.lang.IllegalStateException - if this EntityManager has been closed.void close()
java.lang.IllegalStateException - if the EntityManager is container-managed or has been already
closed..boolean isOpen()
EntityTransaction getTransaction()
java.lang.IllegalStateException - if invoked on a JTA EntityManager.EntityManagerFactory getEntityManagerFactory()
java.lang.IllegalStateException - if the entity manager has been closed.QueryBuilder getQueryBuilder()
java.lang.IllegalStateException - if the entity manager has been closed.
|
EclipseLink 2.0.0_ 2.0.0.r3652-M1 API Reference | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||