Annotation Type PersistenceContext


  • @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

      Optional Elements 
      Modifier and Type Optional Element Description
      java.lang.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.
      PersistenceProperty[] properties
      (Optional) Properties for the container or persistence provider.
      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 the EntityManager joinTransaction method.
      PersistenceContextType type
      (Optional) Specifies whether a transaction-scoped persistence context or an extended persistence context is to be used.
      java.lang.String unitName
      (Optional) The name of the persistence unit as defined in the persistence.xml file.
    • Element Detail

      • name

        java.lang.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

        java.lang.String unitName
        (Optional) The name of the persistence unit as defined in the persistence.xml file. If the unitName element is specified, the persistence unit for the entity manager that is accessible in JNDI must have the same name.
        Default:
        ""
      • type

        PersistenceContextType type
        (Optional) Specifies whether a transaction-scoped persistence context or an extended persistence context is to be used.
        Default:
        javax.persistence.PersistenceContextType.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 the EntityManager joinTransaction method.
        Since:
        2.1
        Default:
        javax.persistence.SynchronizationType.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:
        {}