パッケージ jakarta.persistence
Jakarta Persistence は、永続性およびオブジェクト / リレーショナルマッピングの管理用の API です。
インターフェースのサマリー インターフェース 説明 AttributeConverter<X,Y> このインターフェースを実装するクラスを使用して、エンティティ属性の状態をデータベースの列表現に変換し、再び変換することができます。AttributeNode<T> エンティティグラフの属性ノードを表します。Cache 2 次キャッシュと対話するために使用されるインターフェース。EntityGraph<T> この型は、エンティティおよびエンティティの関連のグラフの属性ノードと境界を定義するためのテンプレートとして使用されるエンティティグラフのルートを表します。EntityManager 永続コンテキストと対話するために使用されるインターフェース。EntityManagerFactory 永続性ユニットのエンティティマネージャーファクトリと対話するために使用されるインターフェース。EntityTransaction リソースローカルエンティティマネージャーでトランザクションを制御するために使用されるインターフェース。Parameter<T> クエリパラメーターオブジェクトの型。PersistenceUnitUtil 永続性ユニットを管理するアプリケーションと永続性プロバイダー間のユーティリティインターフェース。PersistenceUtil アプリケーションと永続性プロバイダー間のユーティリティインターフェース。Query クエリの実行を制御するために使用されるインターフェース。StoredProcedureQuery ストアドプロシージャクエリの実行を制御するために使用されるインターフェース。Subgraph<T> この型は、管理対象型に対応する属性ノードのサブグラフを表します。Tuple クエリ結果タプルの要素を抽出するためのインターフェース。TupleElement<X> TupleElement
インターフェースは、クエリ結果タプルで返される要素を定義します。TypedQuery<X> 型付きクエリの実行を制御するために使用されるインターフェース。クラスのサマリー クラス 説明 Persistence Java SE 環境でEntityManagerFactory
を取得するために使用されるブートストラップクラス。列挙型のサマリー 列挙型 説明 AccessType Access
アノテーションとともに使用して、エンティティクラス、マップされたスーパークラス、埋め込み可能なクラス、そのようなクラスの特定の属性に適用するアクセス型を指定します。CacheRetrieveMode jakarta.persistence.cache.retrieveMode
プロパティの値として使用され、データがfind
メソッドおよびクエリによって取得されるときの動作を指定します。CacheStoreMode jakarta.persistence.cache.storeMode
プロパティの値として使用され、データがデータベースから読み取られるとき、データがデータベースにコミットされるときの動作を指定します。CascadeType 関連付けられたエンティティに伝播される一連のカスケード可能な操作を定義します。ConstraintMode 制約の適用を制御するために使用されます。DiscriminatorType 識別列のサポートされている型を定義します。EnumType 列挙型のマッピングを定義します。FetchType データベースからデータを取得するための戦略を定義します。FlushModeType フラッシュモード設定。GenerationType 主キー生成戦略の型を定義します。InheritanceType 継承戦略オプションを定義します。LockModeType ロックモードは、ロックを取得するEntityManager
メソッドの 1 つ(lock
、find
、refresh
)またはQuery.setLockMode()
またはTypedQuery.setLockMode()
メソッドにLockModeType
引数を渡すことによって指定できます。ParameterMode ストアドプロシージャクエリのパラメーターのモードを指定します。PersistenceContextType PersistenceContext
でトランザクションスコープまたは拡張永続コンテキストのどちらを使用するかを指定します。PessimisticLockScope 悲観的ロックのjakarta.persistence.lock.scope
プロパティの値を定義します。SharedCacheMode プロバイダーが永続性ユニットに 2 次キャッシュを使用する方法を指定します。SynchronizationType 永続コンテキストを常に現在のトランザクションと自動的に同期させるか、EntityManager.joinTransaction()
メソッドを使用して永続コンテキストを現在のトランザクションに明示的に結合する必要があるかを指定します。TemporalType java.util.Date
またはjava.util.Calendar
の特定のマッピングを示すために使用される型。ValidationMode プロバイダーが永続性ユニットに使用する検証モード。例外のサマリー 例外 説明 EntityExistsException EntityManager.persist(Object)
が呼び出され、エンティティがすでに存在する場合、永続化プロバイダーによってスローされます。EntityNotFoundException EntityManager.getReference
によって取得されたエンティティ参照にアクセスしたが、エンティティが存在しない場合に、永続性プロバイダーによってスローされます。LockTimeoutException 悲観的なロックの競合が発生し、トランザクションのロールバックが発生しない場合に永続プロバイダーによってスローされます。NonUniqueResultException Query.getSingleResult()
またはTypedQuery.getSingleResult()
がクエリで実行され、クエリからの結果が複数ある場合に、永続性プロバイダーによってスローされます。NoResultException Query.getSingleResult()
またはTypedQuery.getSingleResult()
がクエリで実行され、返される結果がない場合に、永続化プロバイダーによってスローされます。OptimisticLockException 楽観的なロックの競合が発生したときに永続化プロバイダーによってスローされます。PersistenceException 問題が発生したときに永続化プロバイダーによってスローされます。PessimisticLockException 悲観的なロックの競合が発生したときに永続化プロバイダーによってスローされます。QueryTimeoutException クエリがタイムアウトし、ステートメントのみがロールバックされたときに永続化プロバイダーによってスローされます。RollbackException EntityTransaction.commit()
が失敗したときに永続化プロバイダーによってスローされます。TransactionRequiredException トランザクションが必要であるがアクティブではないときに永続性プロバイダーによってスローされます。アノテーション型のサマリー アノテーション型 説明 Access エンティティクラス、マッピングされたスーパークラス、埋め込み可能なクラス、そのようなクラスの特定の属性に適用されるアクセス型を指定するために使用されます。AssociationOverride エンティティ関連のマッピングをオーバーライドするために使用されます。AssociationOverrides 複数の関連プロパティまたはフィールドのマッピングをオーバーライドするために使用されます。AttributeOverride Basic
(明示的またはデフォルト)プロパティまたはフィールド、またはId
プロパティまたはフィールドのマッピングをオーバーライドするために使用されます。AttributeOverrides 複数のプロパティまたはフィールドのマッピングをオーバーライドするために使用されます。Basic データベース列へのマッピングの最も単純な型。Cacheable persistence.xml
キャッシング要素の値がENABLE_SELECTIVE
またはDISABLE_SELECTIVE
のときにキャッシングが有効になっている場合、エンティティをキャッシュするかどうかを指定します。CollectionTable 基本型または埋め込み型のコレクションのマッピングに使用されるテーブルを指定します。Column 永続プロパティまたはフィールドのマップされた列を指定します。ColumnResult SQL クエリの SELECT リストの列をマップするために、SqlResultSetMapping
アノテーションまたはConstructorResult
アノテーションと組み合わせて使用されます。ConstructorResult SqlResultSetMapping
アノテーションと組み合わせて使用して、SQL クエリの SELECT 句をコンストラクターにマッピングします。Convert 基本的なフィールドまたはプロパティの変換を指定します。Converter アノテーション付きクラスがコンバーターであることを指定し、そのスコープを定義します。Converts Convert
アノテーションをグループ化するために使用されます。DiscriminatorColumn DiscriminatorValue 指定された型のエンティティの識別子列の値を指定します。ElementCollection 基本型または埋め込み可能なクラスのインスタンスのコレクションを指定します。Embeddable インスタンスが所有エンティティの固有部分として格納され、エンティティの ID を共有するクラスを指定します。Embedded 値が埋め込み可能クラスのインスタンスであるエンティティの永続フィールドまたはプロパティを指定します。EmbeddedId エンティティクラスまたはマップされたスーパークラスの永続フィールドまたはプロパティに適用され、埋め込み可能なクラスである複合主キーを示します。Entity クラスがエンティティであることを指定します。EntityListeners エンティティまたはマップされたスーパークラスに使用されるコールバックリスナークラスを指定します。EntityResult SQL クエリの SELECT 句をエンティティ結果にマッピングするために、SqlResultSetMapping
アノテーションと組み合わせて使用されます。Enumerated 永続プロパティまたはフィールドを列挙型として永続化することを指定します。ExcludeDefaultListeners エンティティクラス(またはマッピングされたスーパークラス)とそのサブクラスのデフォルトリスナーの呼び出しを除外することを指定します。ExcludeSuperclassListeners エンティティクラス(またはマップされたスーパークラス)とそのサブクラスのスーパークラスリスナーの呼び出しを除外することを指定します。FieldResult SQL クエリの SELECT リストで指定された列をエンティティクラスのプロパティまたはフィールドにマッピングするために、EntityResult
アノテーションと組み合わせて使用されます。ForeignKey スキーマ生成が有効な場合の外部キー制約の処理を指定するために使用されます。GeneratedValue 主キーの値の生成戦略の仕様を提供します。Id エンティティの主キーを指定します。IdClass エンティティの複数のフィールドまたはプロパティにマップされる複合主キークラスを指定します。Index スキーマ生成で使用され、インデックスの作成を指定します。Inheritance エンティティクラス階層に使用される継承戦略を指定します。JoinColumn エンティティの関連付けまたは要素コレクションに参加するための列を指定します。JoinColumns 複合外部キーのマッピングを指定します。JoinTable 関連付けのマッピングを指定します。Lob 永続プロパティまたはフィールドを、データベースでサポートされるラージオブジェクト型のラージオブジェクトとして永続化することを指定します。ManyToMany 多対多の多重度を持つ多値の関連付けを指定します。ManyToOne 多対 1 の多重度を持つ別のエンティティクラスへの単一値の関連付けを指定します。MapKey マップキー自体がプライマリキーであるか、マップの値であるエンティティの永続フィールドまたはプロパティである場合、型java.util.Map
SE の関連付けのマップキーを指定します。MapKeyClass 型java.util.Map
の関連付けのマップキーの型を指定します。MapKeyColumn マップキーが基本型であるマップのキー列のマッピングを指定します。MapKeyEnumerated 基本型が列挙型であるマップキーの列挙型を指定します。MapKeyJoinColumn マップキーであるエンティティへのマッピングを指定します。MapKeyJoinColumns エンティティを参照する複合マップキーをサポートします。MapKeyTemporal このアノテーションは、型Date
SE およびCalendar
SE の永続マップキーに指定する必要があります。MappedSuperclass マッピング情報が継承するエンティティに適用されるクラスを指定します。MapsId NamedAttributeNode NamedAttributeNode
はNamedEntityGraph
のメンバー要素です。NamedEntityGraph 検索操作またはクエリのパスと境界を指定するために使用されます。NamedEntityGraphs NamedEntityGraph
アノテーションをグループ化するために使用されます。NamedNativeQueries 複数のネイティブ SQL 名前付きクエリを指定します。NamedNativeQuery 名前付きのネイティブ SQL クエリを指定します。NamedQueries 複数の名前付き Jakarta Persistence クエリ言語クエリを指定します。NamedQuery Jakarta Persistence クエリ言語で静的な名前付きクエリを指定します。NamedStoredProcedureQueries 複数の名前付きストアドプロシージャクエリを指定します。NamedStoredProcedureQuery ストアドプロシージャ、そのパラメーター、その結果の型を指定し、名前を付けます。NamedSubgraph NamedSubgraph
はNamedEntityGraph
のメンバー要素です。OneToMany 1 対多の多重度を持つ多値の関連付けを指定します。OneToOne 1 対 1 の多重度を持つ別のエンティティへの単一値の関連付けを指定します。OrderBy 関連付けまたはコレクションが取得される時点で、コレクション値の関連付けまたは要素コレクションの要素の順序を指定します。OrderColumn リストの永続的な順序を維持するために使用される列を指定します。PersistenceContext コンテナー管理のEntityManager
とそれに関連する永続コンテキストへの依存関係を表します。PersistenceContexts 1 つ以上のPersistenceContext
アノテーションを宣言します。PersistenceProperty 単一のコンテナーまたは永続プロバイダーのプロパティを説明します。PersistenceUnit EntityManagerFactory
とそれに関連する永続性ユニットへの依存関係を表します。PersistenceUnits 1 つ以上のPersistenceUnit
アノテーションを宣言します。PostLoad 対応するライフサイクルイベントのコールバックメソッドを指定します。PostPersist 対応するライフサイクルイベントのコールバックメソッドを指定します。PostRemove 対応するライフサイクルイベントのコールバックメソッドを指定します。PostUpdate 対応するライフサイクルイベントのコールバックメソッドを指定します。PrePersist 対応するライフサイクルイベントのコールバックメソッドを指定します。PreRemove 対応するライフサイクルイベントのコールバックメソッドを指定します。PreUpdate 対応するライフサイクルイベントのコールバックメソッドを指定します。PrimaryKeyJoinColumn 別のテーブルに結合するための外部キーとして使用される主キー列を指定します。PrimaryKeyJoinColumns PrimaryKeyJoinColumn
アノテーションをグループ化します。QueryHint NamedQuery
またはNamedNativeQuery
アノテーションにクエリプロパティまたはヒントを提供するために使用されます。SecondaryTable アノテーション付きエンティティクラスのセカンダリテーブルを指定します。SecondaryTables エンティティに複数のセカンダリテーブルを指定します。SequenceGenerator GeneratedValue
アノテーションにジェネレーター要素が指定されている場合に、名前で参照できる主キージェネレーターを定義します。SequenceGenerators SequenceGenerator
アノテーションをグループ化するために使用されます。SqlResultSetMapping ネイティブ SQL クエリまたはストアドプロシージャの結果のマッピングを指定します。SqlResultSetMappings 1 つ以上のSqlResultSetMapping
アノテーションを定義するために使用されます。StoredProcedureParameter 名前付きストアドプロシージャクエリのパラメーターを指定します。Table アノテーション付きエンティティのプライマリテーブルを指定します。TableGenerator GeneratedValue
アノテーションにジェネレーター要素が指定されている場合に、名前で参照できる主キージェネレーターを定義します。TableGenerators TableGenerator
アノテーションをグループ化するために使用されます。Temporal このアノテーションは、型java.util.Date
およびjava.util.Calendar
の永続フィールドまたはプロパティに指定する必要があります。Transient プロパティまたはフィールドが永続的ではないことを指定します。UniqueConstraint プライマリテーブルまたはセカンダリテーブルの生成された DDL に一意の制約を含めることを指定します。Version 楽観的ロック値として機能するエンティティクラスのバージョンフィールドまたはプロパティを指定します。