| 
 | Java EE 5 SDK | ||||||||
| 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 lifecycle 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 
 colocated in their mapping to a single database.
| Method Summary | ||
|---|---|---|
|  void | clear()Clear the persistence context, causing all managed entities to become detached. | |
|  void | close()Close an application-managed EntityManager. | |
|  boolean | contains(Object entity)Check if the instance belongs to the current persistence context. | |
|  Query | createNamedQuery(String name)Create an instance of Query for executing a named query (in the Java Persistence query language or in native SQL). | |
|  Query | createNativeQuery(String sqlString)Create an instance of Query for executing a native SQL statement, e.g., for update or delete. | |
|  Query | createNativeQuery(String sqlString,
                  Class resultClass)Create an instance of Query for executing a native SQL query. | |
|  Query | createNativeQuery(String sqlString,
                  String resultSetMapping)Create an instance of Query for executing a native SQL query. | |
|  Query | createQuery(String qlString)Create an instance of Query for executing a Java Persistence query language statement. | |
| 
 | find(Class<T> entityClass,
     Object primaryKey)Find by primary key. | |
|  void | flush()Synchronize the persistence context to the underlying database. | |
|  Object | getDelegate()Return the underlying provider object for the EntityManager, if available. | |
|  FlushModeType | getFlushMode()Get the flush mode that applies to all objects contained in the persistence context. | |
| 
 | getReference(Class<T> entityClass,
             Object primaryKey)Get an instance, whose state may be lazily fetched. | |
|  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(Object entity,
     LockModeType lockMode)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(Object entity)Make an entity instance managed and persistent. | |
|  void | refresh(Object entity)Refresh the state of the instance from the database, overwriting changes made to the entity, if any. | |
|  void | remove(Object entity)Remove the entity instance. | |
|  void | setFlushMode(FlushModeType flushMode)Set the flush mode that applies to all objects contained in the persistence context. | |
| Method Detail | 
|---|
void persist(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.)
IllegalStateException - if this EntityManager has been closed.
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 - 
IllegalStateException - if this EntityManager has been closed.
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(Object entity)
entity - 
IllegalStateException - if this EntityManager has been closed.
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(Class<T> entityClass,
           Object primaryKey)
entityClass - primaryKey - 
IllegalStateException - if this EntityManager has been closed.
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 getReference(Class<T> entityClass,
                   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 - 
IllegalStateException - if this EntityManager has been closed.
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()
IllegalStateException - if this EntityManager has been closed.
TransactionRequiredException - if there is
    no transaction
PersistenceException - if the flush failsvoid setFlushMode(FlushModeType flushMode)
flushMode - 
IllegalStateException - if this EntityManager has been closed.FlushModeType getFlushMode()
IllegalStateException - if this EntityManager has been closed.
void lock(Object entity,
          LockModeType lockMode)
entity - lockMode - 
IllegalStateException - if this EntityManager has been closed.
PersistenceException - if an unsupported lock call
 is made
IllegalArgumentException - if the instance is not
 an entity or is a detached entity
TransactionRequiredException - if there is no
 transactionvoid refresh(Object entity)
entity - 
IllegalStateException - if this EntityManager has been closed.
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 clear()
IllegalStateException - if this EntityManager has been closed.boolean contains(Object entity)
entity - 
true if the instance belongs to 
 the current persistence context.
IllegalStateException - if this EntityManager has been closed.
IllegalArgumentException - if not an entityQuery createQuery(String qlString)
qlString - a Java Persistence query language query string
IllegalStateException - if this EntityManager has been closed.
IllegalArgumentException - if query string is not validQuery createNamedQuery(String name)
name - the name of a query defined in metadata
IllegalStateException - if this EntityManager has been closed.
IllegalArgumentException - if a query has not been
 defined with the given nameQuery createNativeQuery(String sqlString)
sqlString - a native SQL query string
IllegalStateException - if this EntityManager has been closed.
Query createNativeQuery(String sqlString,
                        Class resultClass)
sqlString - a native SQL query stringresultClass - the class of the resulting instance(s)
IllegalStateException - if this EntityManager has been closed.
Query createNativeQuery(String sqlString,
                        String resultSetMapping)
sqlString - a native SQL query stringresultSetMapping - the name of the result set mapping
IllegalStateException - if this EntityManager has been closed.void joinTransaction()
IllegalStateException - if this EntityManager has been closed.
TransactionRequiredException - if there is
 no transaction.Object getDelegate()
IllegalStateException - if this EntityManager has been closed.void close()
IllegalStateException - if the EntityManager
 is container-managed or has been already closed..boolean isOpen()
EntityTransaction getTransaction()
IllegalStateException - if invoked on a JTA
    EntityManager.| 
 | Java EE 5 SDK | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved.