パッケージ jakarta.persistence
アノテーションインターフェース NamedEntityGraph
@RepeatableSE(NamedEntityGraphs.class)
@TargetSE(TYPESE)
@RetentionSE(RUNTIMESE)
public @interface NamedEntityGraph
名前付きエンティティグラフを定義します。このアノテーションはグラフのルートエンティティに適用する必要があり、ルートエンティティのインスタンスを取得する操作の実行時に取得される、関連する属性とエンティティのグラフの制限を指定します。
名前付きエンティティグラフへの参照は、EntityManager.getEntityGraph(String)
を呼び出すことで取得でき、EntityManager.find(EntityGraph, Object, FindOption...)
に渡すことができます。
- 導入:
- 2.1
オプション要素の概要
オプション要素修飾子と型オプションの要素説明(オプション)このグラフに含まれるエンティティの属性のリスト。boolean
(オプション)アノテーション付きエンティティクラスのすべての属性を属性ノードとして NamedEntityGraph に含めます。明示的にリストする必要はありません。(オプション)EntityManager.getEntityGraph(String)
の呼び出しでエンティティグラフを識別するために使用される名前。(オプション)アノテーション付きエンティティクラスのサブクラスの属性をエンティティグラフに追加するサブグラフのリスト。(オプション)エンティティグラフに含まれるサブグラフのリスト。
要素の詳細
name
StringSE name(オプション)EntityManager.getEntityGraph(String)
の呼び出しでエンティティグラフを識別するために使用される名前。名前が明示的に指定されていない場合、名前はデフォルトで、アノテーションが付けられたルートエンティティのエンティティ名になります。エンティティグラフ名は永続化ユニット内で一意である必要があります。- デフォルト:
- ""
attributeNodes
NamedAttributeNode[] attributeNodes(オプション)このグラフに含まれるエンティティの属性のリスト。- デフォルト:
- {}
includeAllAttributes
boolean includeAllAttributes(オプション)アノテーション付きエンティティクラスのすべての属性を属性ノードとして NamedEntityGraph に含めます。明示的にリストする必要はありません。インクルードされた属性は、サブグラフを参照する属性ノードによって完全に指定できます。- デフォルト:
- false
subgraphs
NamedSubgraph[] subgraphs(オプション)エンティティグラフに含まれるサブグラフのリスト。これらは、NamedAttributeNode 定義から名前で参照されます。- デフォルト:
- {}
subclassSubgraphs
NamedSubgraph[] subclassSubgraphs(オプション)アノテーション付きエンティティクラスのサブクラスの属性をエンティティグラフに追加するサブグラフのリスト。スーパークラスから指定された属性は、サブクラスに含まれます。- デフォルト:
- {}