パッケージ jakarta.persistence
アノテーションインターフェース NamedQuery
@RepeatableSE(NamedQueries.class)
@TargetSE(TYPESE)
@RetentionSE(RUNTIMESE)
public @interface NamedQuery
Jakarta Persistence クエリ言語で記述された名前付きクエリを宣言します。クエリ名のスコープは永続化ユニットに限定されます。名前付きクエリは、
EntityManager.createNamedQuery(String, Class) を呼び出すことで実行できます。以下は、Jakarta Persistence クエリ言語で記述された名前付きクエリの定義の例です。
名前付きクエリは次のように実行できます。NamedQuery アノテーションは、エンティティクラスまたはマップされたスーパークラスに適用できます。
- 導入:
- 1.0
必須定数のサマリー
必須要素修飾子と型必須要素説明(必須)EntityManager.createNamedQuery(java.lang.String)の呼び出しでクエリを識別するために使用される名前。(必須)Jakarta Persistence クエリ言語のクエリ文字列。オプション要素の概要
オプション要素
要素の詳細
name
StringSE name(必須)EntityManager.createNamedQuery(java.lang.String)の呼び出しでクエリを識別するために使用される名前。query
StringSE query(必須)Jakarta Persistence クエリ言語のクエリ文字列。
resultClass
ClassSE<?> resultClass(オプション) 各クエリ結果のクラス。結果クラスは、クラスオブジェクトを明示的にEntityManager.createNamedQuery(String, Class)に渡すことによってオーバーライドできます。名前付きクエリの結果クラスが指定されていない場合、永続化実装では結果クラスをデフォルトでObjectまたはObject[]に設定できます。- デフォルト:
- void.class
lockMode
LockModeType lockMode(オプション) クエリの実行で使用するロックモード型。LockModeType.NONE以外のlockModeが指定された場合、クエリはトランザクションで実行され、永続コンテキストがトランザクションに結合される必要があります。- 導入:
- 2.0
- デフォルト:
- NONE
hints
QueryHint[] hints(オプション)プロパティとヒントを照会します。ベンダー固有のクエリヒントが含まれる場合があります。- デフォルト:
- {}