@Repeatable(PersistenceContexts.class)
@Target({TYPE,METHOD,FIELD})
@Retention(RUNTIME)
public @interface PersistenceContext
Expresses a dependency on a container-managed
EntityManager
and
its associated persistence context.- Since:
- 1.0
-
Optional Element Summary
Modifier and TypeOptional ElementDescription(Optional) The name by which the entity manager is to be accessed in the environment referencing context; not needed when dependency injection is used.(Optional) Properties for the container or persistence provider.(Optional) Specifies whether the persistence context is always automatically synchronized with the current transaction or whether the persistence context must be explicitly joined to the current transaction by means of theEntityManager.joinTransaction()
method.(Optional) Specifies whether a transaction-scoped persistence context or an extended persistence context is to be used.(Optional) The name of the persistence unit as defined in thepersistence.xml
file.
-
Element Details
-
name
String name(Optional) The name by which the entity manager is to be accessed in the environment referencing context; not needed when dependency injection is used.- Default:
""
-
unitName
String unitName(Optional) The name of the persistence unit as defined in thepersistence.xml
file. If theunitName
element is specified, the persistence unit for the entity manager that is accessible in JNDI must have the same name.- Default:
""
-
type
(Optional) Specifies whether a transaction-scoped persistence context or an extended persistence context is to be used.- Default:
TRANSACTION
-
synchronization
SynchronizationType synchronization(Optional) Specifies whether the persistence context is always automatically synchronized with the current transaction or whether the persistence context must be explicitly joined to the current transaction by means of theEntityManager.joinTransaction()
method.- Since:
- 2.1
- Default:
SYNCHRONIZED
-
properties
PersistenceProperty[] properties(Optional) Properties for the container or persistence provider. Vendor specific properties may be included in this set of properties. Properties that are not recognized by a vendor are ignored.- Default:
{}
-