パッケージ jakarta.persistence

アノテーション型 JoinTable


  • @TargetSE({METHODSE,FIELDSE})
    @RetentionSE(RUNTIMESE)
    public @interface JoinTable
    関連付けのマッピングを指定します。これは、協会の所有側に適用されます。

    結合テーブルは通常、多対多のマッピングおよび一方向の 1 対多の関連付けに使用されます。また、双方向の many-to-one/one-to-many 関連付け、単方向の多対 1 関連、および 1 対 1 関連付け (双方向と単方向の両方) をマッピングするために使用することもできます。

    関連の所有側にある埋め込み可能クラスとの関連のマッピングに結合テーブルが使用される場合、埋め込み可能クラスではなく包含エンティティが関連の所有者と見なされます。

    JoinTable アノテーションが欠落している場合、アノテーション要素のデフォルト値が適用されます。結合テーブルの名前は、アンダースコアを使用して連結された(所有側が最初)関連するプライマリテーブルのテーブル名であると見なされます。

    
        Example:
    
        @JoinTable(
            name="CUST_PHONE",
            joinColumns=
                @JoinColumn(name="CUST_ID", referencedColumnName="ID"),
            inverseJoinColumns=
                @JoinColumn(name="PHONE_ID", referencedColumnName="ID")
        )
     
    導入:
    1.0
    関連事項:
    JoinColumn, JoinColumns
    • オプション要素のサマリー

      オプション要素  
      修飾子と型 オプションの要素 説明
      StringSEcatalog
      (オプション)テーブルのカタログ。
      ForeignKeyforeignKey
      (オプション)テーブル生成が有効な場合に、joinColumns 要素に対応する列の外部キー制約の生成を指定または制御するために使用されます。
      Index[]indexes
      (オプション)テーブルのインデックス。
      ForeignKeyinverseForeignKey
      (オプション)テーブル生成が有効な場合に、inverseJoinColumns 要素に対応する列の外部キー制約の生成を指定または制御するために使用されます。
      JoinColumn[]inverseJoinColumns
      (オプション)関連付けを所有していないエンティティのプライマリテーブルを参照する結合テーブルの外部キー列。
      JoinColumn[]joinColumns
      (オプション)関連付けを所有するエンティティのプライマリテーブルを参照する結合テーブルの外部キー列。
      StringSEname
      (オプション)結合テーブルの名前。
      StringSEschema
      (オプション)テーブルのスキーマ。
      UniqueConstraint[]uniqueConstraints
      (オプション)テーブルに配置される一意の制約。
    • 要素の詳細

      • name

        StringSE name
        (オプション)結合テーブルの名前。

        デフォルトは、アンダースコアで区切られた、関連付けられた 2 つのプライマリエンティティテーブルの連結名です。

        デフォルト:
        ""
      • catalog

        StringSE catalog
        (オプション)テーブルのカタログ。

        デフォルトはデフォルトカタログです。

        デフォルト:
        ""
      • schema

        StringSE schema
        (オプション)テーブルのスキーマ。

        デフォルトはユーザーのデフォルトスキーマです。

        デフォルト:
        ""
      • joinColumns

        JoinColumn[] joinColumns
        (オプション)関連付けを所有するエンティティのプライマリテーブルを参照する結合テーブルの外部キー列。(つまり、協会の所有側)。

        JoinColumn と同じデフォルトを使用します。

        デフォルト:
        {}
      • inverseJoinColumns

        JoinColumn[] inverseJoinColumns
        (オプション)関連付けを所有していないエンティティのプライマリテーブルを参照する結合テーブルの外部キー列。(つまり、関連付けの逆側)。

        JoinColumn と同じデフォルトを使用します。

        デフォルト:
        {}
      • foreignKey

        ForeignKey foreignKey
        (オプション)テーブル生成が有効な場合に、joinColumns 要素に対応する列の外部キー制約の生成を指定または制御するために使用されます。この要素といずれかの joinColumns 要素の foreignKey 要素の両方が指定されている場合、動作は未定義です。どちらの場所でも外部キーアノテーション要素が指定されていない場合は、永続性プロバイダーのデフォルトの外部キー戦略が適用されます。
        導入:
        2.1
        デフォルト:
        @jakarta.persistence.ForeignKey(jakarta.persistence.ConstraintMode.PROVIDER_DEFAULT)
      • inverseForeignKey

        ForeignKey inverseForeignKey
        (オプション)テーブル生成が有効な場合に、inverseJoinColumns 要素に対応する列の外部キー制約の生成を指定または制御するために使用されます。この要素といずれかの inverseJoinColumns 要素の foreignKey 要素の両方が指定されている場合、動作は未定義です。どちらの場所でも外部キーアノテーション要素が指定されていない場合は、永続性プロバイダーのデフォルトの外部キー戦略が適用されます。
        導入:
        2.1
        デフォルト:
        @jakarta.persistence.ForeignKey(jakarta.persistence.ConstraintMode.PROVIDER_DEFAULT)
      • uniqueConstraints

        UniqueConstraint[] uniqueConstraints
        (オプション)テーブルに配置される一意の制約。これらは、テーブル生成が有効な場合にのみ使用されます。

        デフォルトでは追加の制約はありません。

        デフォルト:
        {}
      • indexes

        Index[] indexes
        (オプション)テーブルのインデックス。これらは、テーブル生成が有効な場合にのみ使用されます。
        導入:
        2.1
        デフォルト:
        {}