パッケージ jakarta.persistence
アノテーション型 NamedQuery
@RepeatableSE(NamedQueries.class) @TargetSE(TYPESE) @RetentionSE(RUNTIMESE) public @interface NamedQuery
Jakarta Persistence クエリ言語で静的な名前付きクエリを指定します。クエリ名のスコープは永続性ユニットです。NamedQuery
アノテーションは、エンティティまたはマップされたスーパークラスに適用できます。以下は、Jakarta Persistence クエリ言語での名前付きクエリの定義の例です。
@NamedQuery( name="findAllCustomersWithName", query="SELECT c FROM Customer c WHERE c.name LIKE :custName" )
以下は、名前付きクエリの使用例です。
@PersistenceContext public EntityManager em; ... customers = em.createNamedQuery("findAllCustomersWithName") .setParameter("custName", "Smith") .getResultList();
- 導入:
- 1.0
必須定数のサマリー
必須要素 修飾子と型 必須要素 説明 StringSE
name
(必須)クエリオブジェクトを作成するEntityManager
メソッドでクエリを参照するために使用される名前。StringSE
query
(必須)Jakarta Persistence クエリ言語のクエリ文字列。
オプション要素のサマリー
オプション要素 修飾子と型 オプションの要素 説明 QueryHint[]
hints
(オプション)プロパティとヒントを照会します。LockModeType
lockMode
(オプション)クエリ実行で使用するロックモード型。
要素の詳細
name
StringSE name
(必須)クエリオブジェクトを作成するEntityManager
メソッドでクエリを参照するために使用される名前。
query
StringSE query
(必須)Jakarta Persistence クエリ言語のクエリ文字列。
lockMode
LockModeType lockMode
(オプション)クエリ実行で使用するロックモード型。LockModeType.NONE
以外のlockMode
が指定されている場合は、クエリをトランザクションで実行し、永続コンテキストをトランザクションに結合する必要があります。- 導入:
- 2.0
- デフォルト:
- jakarta.persistence.LockModeType.NONE
hints
QueryHint[] hints
(オプション)プロパティとヒントを照会します。ベンダー固有のクエリヒントが含まれる場合があります。- デフォルト:
- {}