Package jakarta.persistence
package jakarta.persistence
Jakarta Persistence is the API for the management for persistence and object/relational mapping.
-
ClassDescriptionUsed to specify an access type to be applied to an entity class, mapped superclass, or embeddable class, or to a specific attribute of such a class.Used with the
Access
annotation to specify an access type to be applied to an entity class, mapped superclass, or embeddable class, or to a specific attribute of such a class.Used to override a mapping for an entity relationship.Used to override mappings of multiple relationship properties or fields.AttributeConverter<X,Y> Interface implemented by custom attribute converters.Represents an attribute node of an entity graph.Used to override the mapping of aBasic
(whether explicit or default) property or field orId
property or field.Used to override mappings of multiple properties or fields.The simplest type of mapping of a persistent field or property to a single database column.Interface used to interact with the second-level cache.Specifies whether an entity should be cached, if caching is enabled, and when the value of thepersistence.xml
caching element isSharedCacheMode.ENABLE_SELECTIVE
orSharedCacheMode.DISABLE_SELECTIVE
.Specifies how theEntityManager
interacts with the second-level cache when data is read from the database via theEntityManager.find(java.lang.Class<T>, java.lang.Object)
methods and execution of queries.Specifies how theEntityManager
interacts with the second-level cache when data is read from the database and when data is written to the database.Defines the set of cascadable operations that are propagated to the associated entity.Used to specify a SQL check constraint on a column or table when schema generation is in effect.Specifies the table that is used for the mapping of collections of basic or embeddable types.Specifies the column mapped by the annotated persistent property or field.Used in conjunction with theSqlResultSetMapping
,NamedNativeQuery
, orConstructorResult
annotation to map a column of the SELECT list of a SQL query.An executable action which makes use of a native database connection.ConnectionFunction<C,T> A function which makes use of a native database connection to compute a result.Used to control the application of a constraint.Used in conjunction with theSqlResultSetMapping
orNamedNativeQuery
annotation to map the SELECT clause of a SQL query to a constructor.Specifies how the values of a field or property are converted to a basic type, enabling a converter definedautoApply=false
, overriding the use of a converter definedautoApply=true
, or overriding the use of a converter specified by a field or property of an embedded type or inherited mapped superclass.Declares that the annotated class is a converter and specifies whether the converter is automatically applied.Used to groupConvert
annotations.Defines supported types of the discriminator column.Specifies the value of the discriminator column for the annotated entity type.Declares a collection of instances of a basic type or embeddable class.Declares a type whose instances are stored as an intrinsic part of an owning entity, sharing the identity of the entity.Declares a persistent field or property of an entity whose value is an instance of an embeddable class.Specifies that the annotated persistent field or property of an entity class or mapped superclass is the composite primary key of the entity.Declares that the annotated class is an entity.Thrown by the persistence provider whenEntityManager.persist(Object)
is called and the entity already exists.EntityGraph<T>This type represents the root of an entity graph that will be used as a template to define the attribute nodes and boundaries of a graph of entities and entity relationships.Specifies the callback listener classes to be used for an entity or mapped superclass.Interface used to interact with the persistence context.Interface used to interact with the persistence unit, and to create new instances ofEntityManager
.Thrown by the persistence provider when an entity reference obtained byEntityManager.getReference
is accessed but the entity does not exist.Used in conjunction with theSqlResultSetMapping
orNamedNativeQuery
annotation to map the SELECT clause of a SQL query to an entity result.Interface used to control transactions on resource-local entity managers.Specifies that a persistent property or field should be persisted as an enumerated type.Specifies that an annotated field of a Javaenum
type is the source of database column values for an enumerated mapping.Enumerates available options for mapping enumerated types.Specifies that the invocation of default listeners is to be excluded for the entity class (or mapped superclass) and its subclasses.Specifies that the invocation of superclass listeners is to be excluded for the entity class (or mapped superclass) and its subclasses.Defines strategies for fetching data from the database.Used in conjunction with theEntityResult
annotation to map columns specified in the SELECT list of a SQL query to the properties or fields of an entity class.An option influencing the behavior ofEntityManager.find(java.lang.Class<T>, java.lang.Object)
.Enumerates flush modes recognized by theEntityManager
.Specifies the handling of foreign key constraints when schema generation is in effect.Specifies a generation strategy for generated primary keys.Enumerates the defined primary key generation strategies.Graph<T>Declares operations common toEntityGraph
andSubgraph
.Identifies the primary key of an entity.Specifies a composite primary key type whose fields or properties map to the identifier fields or properties of the annotated entity class.Used in schema generation to specify creation of an index.Specifies the inheritance mapping strategy for the entity class hierarchy which descends from the annotated entity class.Enumerated the options for mapping entity inheritance.Specifies a column for joining an entity association or element collection.Specifies the mapping for composite foreign keys.Specifies the mapping of an association to an intermediate join table.Specifies that the annotated persistent property or field should be persisted as a large object to a database-native large object (LOB) type.Enumerates the kinds of optimistic or pessimistic lock which may be obtained on an entity instance.An option influencing the behavior ofEntityManager.lock(java.lang.Object, jakarta.persistence.LockModeType)
.Thrown by the persistence provider when a pessimistic locking conflict occurs that does not result in transaction rollback.Specifies a many-valued association with many-to-many multiplicity, mapping to an intermediate table called the join table.Specifies a single-valued association to another entity class that has many-to-one multiplicity.Specifies the map key for associations of typeMap
when the map key is itself the primary key or a persistent field or property of the entity that is the value of the map.Specifies the type of the map key for associations of typeMap
.Specifies the mapping for the key column of a map whose map key is a basic type.Specifies the enum type for a map key whose basic type is an enumerated type.Specifies a mapping to an entity that is a map key.Supports composite map keys that reference entities.Deprecated.Declares a class which is not itself an entity, but whose mappings are inherited by the entities which extend it.Designates aManyToOne
orOneToOne
relationship attribute that provides the mapping for anEmbeddedId
primary key, an attribute within anEmbeddedId
primary key, or a simple primary key of the parent entity.ANamedAttributeNode
is a member element of aNamedEntityGraph
.Defines a named entity graph.Used to groupNamedEntityGraph
annotations.Declares multiple native SQL named queries.Declares a named native SQL query and, optionally, the mapping of the result of the native SQL query.Declares multiple named Jakarta Persistence query language queries.Declares a named query written in the Jakarta Persistence query language.Specifies multiple named stored procedure queries.Declares and names a stored procedure, its parameters, and its result type.ANamedSubgraph
is a member element of aNamedEntityGraph
.Thrown by the persistence provider whenQuery.getSingleResult()
orTypedQuery.getSingleResult()
is executed and there is more than one result from the query.Thrown by the persistence provider whenQuery.getSingleResult()
orTypedQuery.getSingleResult()
is executed and there is no result to return.Specifies a many-valued association with one-to-many multiplicity.Specifies a single-valued association to another entity class that has one-to-one multiplicity.Thrown by the persistence provider when an optimistic locking conflict occurs.Specifies the ordering of the elements of a collection-valued association or element collection at the point when the association or collection is retrieved.Specifies a column that is used to maintain the persistent order of a list.Parameter<T>Type for query parameter objects.Specifies the mode of a parameter of a stored procedure query.Bootstrap class used to obtain anEntityManagerFactory
in Java SE environments.Represents a configuration of a persistence unit, allowing programmatic creation of anEntityManagerFactory
.Expresses a dependency on a container-managedEntityManager
and its associated persistence context.Declares one or morePersistenceContext
annotations.Specifies whether a transaction-scoped or extended persistence context is to be used inPersistenceContext
.Thrown by the persistence provider when a problem occurs.Describes a single container or persistence provider property.Expresses a dependency on anEntityManagerFactory
and its associated persistence unit.Declares one or morePersistenceUnit
annotations.Enumerates the possible approaches to transaction management in Jakarta Persistence.Utility interface between the application and the persistence provider managing the persistence unit.Utility interface between the application and the persistence provider(s).Thrown by the persistence provider when a pessimistic locking conflict occurs.Defines the values of thejakarta.persistence.lock.scope
property for pessimistic locking.Specifies a callback method for the corresponding lifecycle event.Specifies a callback method for the corresponding lifecycle event.Specifies a callback method for the corresponding lifecycle event.Specifies a callback method for the corresponding lifecycle event.Specifies a callback method for the corresponding lifecycle event.Specifies a callback method for the corresponding lifecycle event.Specifies a callback method for the corresponding lifecycle event.Specifies a primary key column that is used as a foreign key to join to another table.GroupsPrimaryKeyJoinColumn
annotations.Interface used to control query execution.Used to supply a query property or hint to theNamedQuery
orNamedNativeQuery
annotation.Thrown by the persistence provider when a query times out and only the statement is rolled back.An option influencing the behavior ofEntityManager.refresh(java.lang.Object)
.Thrown by the persistence provider whenEntityTransaction.commit()
fails.Allows programmatic schema creation, schema validation, data cleanup, and schema cleanup for entities belonging to a certain persistence unit.Thrown whenschema validation
fails.Specifies a secondary table for the annotated entity class.Specifies multiple secondary tables for an entity.Defines a primary key generator that may be referenced by name when a generator element is specified for theGeneratedValue
annotation.Used to groupSequenceGenerator
annotations.Specifies how the provider must use a second-level cache for the persistence unit.Specifies a mapping of the columns of a result set of a native SQL query or stored procedure.Used to define one or moreSqlResultSetMapping
annotations.Declares a parameter of a named stored procedure query.Interface used to control stored procedure query execution.Subgraph<T>This type represents a subgraph for an attribute node that corresponds to a managed type.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.Specifies the primary table mapped by the annotated entity type.Defines a primary key generator that may be referenced by name when a generator element is specified for theGeneratedValue
annotation.Used to groupTableGenerator
annotations.Deprecated.Newly-written code should use the date/time types defined injava.time
.Deprecated.Newly-written code should use the date/time types defined injava.time
.Specifies a timeout for a database request.Thrown by the persistence provider when a transaction is required but is not active.Specifies that the annotated property or field is not persistent.Interface for extracting the elements of a query result tuple.TupleElement<X>TheTupleElement
interface defines an element that is returned in a query result tuple.TypedQuery<X>Interface used to control the execution of typed queries.A reference to a named query declared via theNamedQuery
orNamedNativeQuery
annotations.Specifies that a unique constraint is to be included in the generated DDL for a primary or secondary table.The validation mode to be used by the provider for the persistence unit.Declares the version field or property of an entity class, which is used to detect optimistic lock failures, ensuring the integrity of optimistic transactions.
java.time
.