パッケージ jakarta.persistence

インターフェース EntityGraph<T>

  • 型パラメーター:
    T - ルートエンティティの型。

    public interface EntityGraph<T>
    この型は、エンティティおよびエンティティ関連のグラフの属性ノードと境界を定義するためのテンプレートとして使用されるエンティティグラフのルートを表します。ルートはエンティティ型である必要があります。

    サブグラフを追加するメソッドは、対応する属性ノードも暗黙的に作成します。このような属性ノードは、冗長に指定しないでください。

    導入:
    2.1
    関連事項:
    AttributeNode, Subgraph, NamedEntityGraph
    • メソッドのサマリー

      すべてのメソッド   インスタンスメソッド   抽象メソッド  
      修飾子と型 メソッド 説明
      voidaddAttributeNodes​(Attribute<T,​?>... attribute)
      エンティティグラフに 1 つ以上の属性ノードを追加します。
      voidaddAttributeNodes​(StringSE... attributeName)
      エンティティグラフに 1 つ以上の属性ノードを追加します。
      <X> Subgraph<X>addKeySubgraph​(Attribute<T,​X> attribute)
      マネージ型であるマップキーに対応するノードをグラフに追加します。
      <X> Subgraph<? extends X>addKeySubgraph​(Attribute<T,​X> attribute, ClassSE<? extends X> type)
      継承のあるマネージ型であるマップキーに対応するノードをグラフに追加します。
      <X> Subgraph<X>addKeySubgraph​(StringSE attributeName)
      マネージ型であるマップキーに対応するノードをグラフに追加します。
      <X> Subgraph<X>addKeySubgraph​(StringSE attributeName, ClassSE<X> type)
      継承のあるマネージ型であるマップキーに対応するノードをグラフに追加します。
      <T> Subgraph<? extends T>addSubclassSubgraph​(ClassSE<? extends T> type)
      この EntityGraph のエンティティ型のサブクラスの属性に対応する追加の属性をこのエンティティグラフに追加します。
      <X> Subgraph<X>addSubgraph​(Attribute<T,​X> attribute)
      管理対象型に対応するノードをグラフに追加します。
      <X> Subgraph<? extends X>addSubgraph​(Attribute<T,​X> attribute, ClassSE<? extends X> type)
      継承されたマネージ型に対応するノードをグラフに追加します。
      <X> Subgraph<X>addSubgraph​(StringSE attributeName)
      管理対象型に対応するノードをグラフに追加します。
      <X> Subgraph<X>addSubgraph​(StringSE attributeName, ClassSE<X> type)
      継承されたマネージ型に対応するノードをグラフに追加します。
      ListSE<AttributeNode<?>>getAttributeNodes()
      エンティティグラフに含まれているこのエンティティの属性ノードを返します。
      StringSEgetName()
      名前付き EntityGraph(NamedEntityGraph アノテーション、XML 記述子要素によって定義されたエンティティグラフ、addNamedEntityGraph メソッドによって追加されたエンティティグラフ)の名前を返します。
    • メソッドの詳細

      • getName

        StringSE getName()
        名前付き EntityGraph の名前を返します(NamedEntityGraph アノテーション、XML 記述子要素によって定義されたエンティティグラフ、addNamedEntityGraph メソッドによって追加されたエンティティグラフ。EntityGraph が名前付き EntityGraph でない場合は null を返します。
      • addAttributeNodes

        void addAttributeNodes​(StringSE... attributeName)
        エンティティグラフに 1 つ以上の属性ノードを追加します。
        パラメーター:
        attributeName - 属性の名前
        例外:
        IllegalArgumentExceptionSE - 属性がこのエンティティの属性ではない場合。
        IllegalStateExceptionSE - EntityGraph が静的に定義されている場合
      • addAttributeNodes

        void addAttributeNodes​(Attribute<T,​?>... attribute)
        エンティティグラフに 1 つ以上の属性ノードを追加します。
        パラメーター:
        attribute - 属性
        例外:
        IllegalStateExceptionSE - EntityGraph が静的に定義されている場合
      • addSubgraph

        <X> Subgraph<X> addSubgraph​(Attribute<T,​X> attribute)
        管理対象型に対応するノードをグラフに追加します。これにより、関連するマネージ型を含むマルチノードエンティティグラフを作成できます。
        パラメーター:
        attribute - 属性
        戻り値:
        属性のサブグラフ
        例外:
        IllegalArgumentExceptionSE - 属性のターゲット型がマネージ型ではない場合
        IllegalStateExceptionSE - EntityGraph が静的に定義されている場合
      • addSubgraph

        <X> Subgraph<? extends X> addSubgraph​(Attribute<T,​X> attribute,
                                              ClassSE<? extends X> type)
        継承のある管理型に対応するノードをグラフに追加します。これにより、エンティティグラフのこのノードに複数のサブクラスサブグラフを定義できます。サブクラスサブグラフには、スーパークラスサブグラフの指定された属性が自動的に含まれます。
        パラメーター:
        attribute - 属性
        type - エンティティサブクラス
        戻り値:
        属性のサブグラフ
        例外:
        IllegalArgumentExceptionSE - 属性のターゲット型がマネージ型ではない場合
        IllegalStateExceptionSE - EntityGraph が静的に定義されている場合
      • addSubgraph

        <X> Subgraph<X> addSubgraph​(StringSE attributeName)
        管理対象型に対応するノードをグラフに追加します。これにより、関連するマネージ型を含むマルチノードエンティティグラフを作成できます。
        パラメーター:
        attributeName - 属性の名前
        戻り値:
        属性のサブグラフ
        例外:
        IllegalArgumentExceptionSE - 属性がこのエンティティの属性ではない場合。
        IllegalArgumentExceptionSE - 属性のターゲット型がマネージ型ではない場合
        IllegalStateExceptionSE - EntityGraph が静的に定義されている場合
      • addSubgraph

        <X> Subgraph<X> addSubgraph​(StringSE attributeName,
                                    ClassSE<X> type)
        継承のある管理型に対応するノードをグラフに追加します。これにより、エンティティグラフのこのノードに複数のサブクラスサブグラフを定義できます。サブクラスサブグラフには、スーパークラスサブグラフの指定された属性が自動的に含まれます。
        パラメーター:
        attributeName - 属性の名前
        type - エンティティサブクラス
        戻り値:
        属性のサブグラフ
        例外:
        IllegalArgumentExceptionSE - 属性がこの管理対象型の属性でない場合。
        IllegalArgumentExceptionSE - 属性のターゲット型がマネージ型ではない場合
        IllegalStateExceptionSE - この EntityGraph が静的に定義されている場合
      • addKeySubgraph

        <X> Subgraph<X> addKeySubgraph​(Attribute<T,​X> attribute)
        管理対象型であるマップキーに対応するノードをグラフに追加します。これにより、関連する管理対象型を含むマルチノードエンティティグラフを作成できます。
        パラメーター:
        attribute - 属性
        戻り値:
        キー属性のサブグラフ
        例外:
        IllegalArgumentExceptionSE - 属性のターゲット型がエンティティでない場合
        IllegalStateExceptionSE - この EntityGraph が静的に定義されている場合
      • addKeySubgraph

        <X> Subgraph<? extends X> addKeySubgraph​(Attribute<T,​X> attribute,
                                                 ClassSE<? extends X> type)
        継承のあるマネージド型であるマップキーに対応するノードをグラフに追加します。これにより、関連する管理対象型を含むマルチノードエンティティグラフを作成できます。サブクラスサブグラフには、スーパークラスサブグラフの指定された属性が含まれます。
        パラメーター:
        attribute - 属性
        type - エンティティサブクラス
        戻り値:
        キー属性のサブグラフ
        例外:
        IllegalArgumentExceptionSE - 属性のターゲット型がエンティティでない場合
        IllegalStateExceptionSE - この EntityGraph が静的に定義されている場合
      • addKeySubgraph

        <X> Subgraph<X> addKeySubgraph​(StringSE attributeName)
        管理対象型であるマップキーに対応するノードをグラフに追加します。これにより、関連する管理対象型を含むマルチノードエンティティグラフを作成できます。
        パラメーター:
        attributeName - 属性の名前
        戻り値:
        キー属性のサブグラフ
        例外:
        IllegalArgumentExceptionSE - 属性がこのエンティティの属性ではない場合。
        IllegalArgumentExceptionSE - 属性のターゲット型がエンティティでない場合
        IllegalStateExceptionSE - この EntityGraph が静的に定義されている場合
      • addKeySubgraph

        <X> Subgraph<X> addKeySubgraph​(StringSE attributeName,
                                       ClassSE<X> type)
        継承のあるマネージド型であるマップキーに対応するノードをグラフに追加します。これにより、関連する管理対象型を含むマルチノードエンティティグラフを作成できます。サブクラスサブグラフには、スーパークラスサブグラフの指定された属性が自動的に含まれます
        パラメーター:
        attributeName - 属性の名前
        type - エンティティサブクラス
        戻り値:
        キー属性のサブグラフ
        例外:
        IllegalArgumentExceptionSE - 属性がこのエンティティの属性ではない場合。
        IllegalArgumentExceptionSE - 属性のターゲット型がマネージ型ではない場合
        IllegalStateExceptionSE - この EntityGraph が静的に定義されている場合
      • addSubclassSubgraph

        <T> Subgraph<? extends T> addSubclassSubgraph​(ClassSE<? extends T> type)
        この EntityGraph のエンティティ型のサブクラスの属性に対応する追加の属性をこのエンティティグラフに追加します。サブクラスサブグラフには、スーパークラスサブグラフの指定された属性が自動的に含まれます。
        パラメーター:
        type - エンティティサブクラス
        戻り値:
        サブクラスのサブグラフ
        例外:
        IllegalArgumentExceptionSE - 型がエンティティ型でない場合
        IllegalStateExceptionSE - EntityGraph が静的に定義されている場合
      • getAttributeNodes

        ListSE<AttributeNode<?>> getAttributeNodes()
        エンティティグラフに含まれているこのエンティティの属性ノードを返します。
        戻り値:
        アノテーション付きエンティティ型の属性ノード、または定義されていない場合は空のリスト