| AccessType | 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. | 
| AssociationOverride | Used to override a mapping for an entity relationship. | 
| AttributeNode | Represents an attribute node of an entity graph. | 
| AttributeOverride | Used to override the mapping of a Basic(whether
 explicit or default) property or field orIdproperty or
 field. | 
| Cache | Interface used to interact with the second-level cache. | 
| CacheRetrieveMode | Used as the value of the
 jakarta.persistence.cache.retrieveModeproperty to
 specify the behavior when data is retrieved by thefindmethods and by queries. | 
| CacheStoreMode | Used as the value of the
 jakarta.persistence.cache.storeModeproperty to specify
 the behavior when data is read from the database and when data is
 committed into the database. | 
| CascadeType | Defines the set of cascadable operations that are propagated 
 to the associated entity. | 
| Column | Specifies the mapped column for a persistent property or field. | 
| ColumnResult |  | 
| ConstraintMode | Used to control the application of a constraint. | 
| ConstructorResult | Used in conjunction with the  SqlResultSetMapping annotation to map the SELECT
 clause of a SQL query to a constructor. | 
| Convert | Specifies the conversion of a Basic field or property. | 
| DiscriminatorType | Defines supported types of the discriminator column. | 
| EntityGraph | 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. | 
| EntityManager | Interface used to interact with the persistence context. | 
| EntityManagerFactory | Interface used to interact with the entity manager factory
 for the persistence unit. | 
| EntityResult | Used in conjunction with the  SqlResultSetMapping annotation to map the SELECT
 clause of a SQL query to an entity result. | 
| EntityTransaction | Interface used to control transactions on resource-local entity
 managers. | 
| EnumType | Defines mapping for enumerated types. | 
| FetchType | Defines strategies for fetching data from the database. | 
| FieldResult | Used in conjunction with the  EntityResult annotation to map columns specified 
 in the SELECT list of a SQL query to the properties or fields of an entity class. | 
| FlushModeType | Flush mode setting. | 
| ForeignKey | Used to specify the handling of foreign key constraints when schema
 generation is in effect. | 
| GenerationType | Defines the types of primary key generation strategies. | 
| Index | Used in schema generation to specify creation of an index. | 
| InheritanceType | Defines inheritance strategy options. | 
| JoinColumn | Specifies a column for joining an entity association or element
 collection. | 
| JoinTable | Specifies the mapping of associations. | 
| LockModeType |  | 
| MapKeyJoinColumn | Specifies a mapping to an entity that is a map key. | 
| NamedAttributeNode | A NamedAttributeNodeis a member element of aNamedEntityGraph. | 
| NamedEntityGraph | Used to specify the path and boundaries for a find operation or query. | 
| NamedNativeQuery | Specifies a named native SQL query. | 
| NamedQuery | Specifies a static, named query in the Jakarta Persistence query language. | 
| NamedStoredProcedureQuery | Specifies and names a stored procedure, its parameters, and its result type. | 
| NamedSubgraph | A NamedSubgraphis a member element of aNamedEntityGraph. | 
| Parameter | Type for query parameter objects. | 
| ParameterMode | Specifies the mode of a parameter of a stored procedure query. | 
| PersistenceContext | Expresses a dependency on a container-managed  EntityManager and its
 associated persistence context. | 
| PersistenceContextType | Specifies whether a transaction-scoped or extended 
 persistence context is to be used in  PersistenceContext. | 
| PersistenceException | Thrown by the persistence provider when a problem occurs. | 
| PersistenceProperty | Describes a single container or persistence provider property. | 
| PersistenceUnit |  | 
| PersistenceUnitUtil | Utility interface between the application and the persistence
 provider managing the persistence unit. | 
| PersistenceUtil | Utility interface between the application and the persistence
 provider(s). | 
| PessimisticLockScope | Defines the values of the jakarta.persistence.lock.scopeproperty for pessimistic locking. | 
| PrimaryKeyJoinColumn | Specifies a primary key column that is used as a foreign key to
 join to another table. | 
| Query | Interface used to control query execution. | 
| QueryHint |  | 
| SecondaryTable | Specifies a secondary table for the annotated entity
 class. | 
| SequenceGenerator | Defines a primary key generator that may be referenced by name when
 a generator element is specified for the  GeneratedValue
 annotation. | 
| SharedCacheMode | Specifies how the provider must use a second-level cache for the
 persistence unit. | 
| SqlResultSetMapping | Specifies the mapping of the result of a native SQL query or stored 
 procedure. | 
| StoredProcedureParameter | Specifies a parameter of a named stored procedure query. | 
| StoredProcedureQuery | Interface used to control stored procedure query execution. | 
| Subgraph | This type represents a subgraph for an attribute node that
 corresponds to a Managed Type. | 
| SynchronizationType | 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. | 
| TableGenerator | Defines a primary key generator that may be 
 referenced by name when a generator element is specified for 
 the  GeneratedValue annotation. | 
| TemporalType | Type used to indicate a specific mapping of java.util.Dateorjava.util.Calendar. | 
| TupleElement | The TupleElementinterface defines an element that is returned in
 a query result tuple. | 
| TypedQuery | Interface used to control the execution of typed queries. | 
| UniqueConstraint | Specifies that a unique constraint is to be included in
 the generated DDL for a primary or secondary table. | 
| ValidationMode | The validation mode to be used by the provider for the persistence
 unit. |