パッケージ jakarta.persistence

アノテーション型 TableGenerator


  • @RepeatableSE(TableGenerators.class)
    @TargetSE({TYPESE,METHODSE,FIELDSE})
    @RetentionSE(RUNTIMESE)
    public @interface TableGenerator
    GeneratedValue アノテーションにジェネレーター要素が指定されている場合に名前で参照できる主キージェネレーターを定義します。テーブルジェネレーターは、エンティティクラスまたは主キーフィールドまたはプロパティで指定できます。ジェネレーター名のスコープは、永続性ユニットに対してグローバルです(すべてのジェネレーター型にわたって)。
        Example 1:
        
        @Entity public class Employee {
            ...
            @TableGenerator(
                name="empGen", 
                table="ID_GEN", 
                pkColumnName="GEN_KEY", 
                valueColumnName="GEN_VALUE", 
                pkColumnValue="EMP_ID", 
                allocationSize=1)
            @Id
            @GeneratedValue(strategy=TABLE, generator="empGen")
            int id;
            ...
        }
        
        Example 2:
        
        @Entity public class Address {
            ...
            @TableGenerator(
                name="addressGen", 
                table="ID_GEN", 
                pkColumnName="GEN_KEY", 
                valueColumnName="GEN_VALUE", 
                pkColumnValue="ADDR_ID")
            @Id
            @GeneratedValue(strategy=TABLE, generator="addressGen")
            int id;
            ...
        }
     
    導入:
    1.0
    関連事項:
    GeneratedValue
    • 必須定数のサマリー

      必須要素  
      修飾子と型 必須要素 説明
      StringSEname
      (必須)ID 値のジェネレーターとして 1 つ以上のクラスから参照できる一意のジェネレーター名。
    • オプション要素のサマリー

      オプション要素  
      修飾子と型 オプションの要素 説明
      intallocationSize
      (オプション)ジェネレーターから ID 番号を割り当てるときにインクリメントする量。
      StringSEcatalog
      (オプション)テーブルのカタログ。
      Index[]indexes
      (オプション)テーブルのインデックス。
      intinitialValue
      (オプション)最後に生成された値を格納する列を初期化するために使用される初期値。
      StringSEpkColumnName
      (オプション)テーブルの主キー列の名前。
      StringSEpkColumnValue
      (オプション)この生成された値のセットを、テーブルに格納される可能性のある他の値と区別する、ジェネレーターテーブルの主キー値。
      StringSEschema
      (オプション)テーブルのスキーマ。
      StringSEtable
      (オプション)生成された ID 値を格納するテーブルの名前。
      UniqueConstraint[]uniqueConstraints
      (オプション)テーブルに配置される一意の制約。
      StringSEvalueColumnName
      (オプション)最後に生成された値を格納する列の名前。
    • 要素の詳細

      • name

        StringSE name
        (必須)ID 値のジェネレーターとして 1 つ以上のクラスから参照できる一意のジェネレーター名。
      • table

        StringSE table
        (オプション)生成された ID 値を格納するテーブルの名前。

        デフォルトは、永続性プロバイダーによって選択された名前です。

        デフォルト:
        ""
      • catalog

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

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

        デフォルト:
        ""
      • schema

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

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

        デフォルト:
        ""
      • pkColumnName

        StringSE pkColumnName
        (オプション)テーブルの主キー列の名前。

        デフォルトはプロバイダーが選択した名前です。

        デフォルト:
        ""
      • valueColumnName

        StringSE valueColumnName
        (オプション)最後に生成された値を格納する列の名前。

        デフォルトはプロバイダーが選択した名前です。

        デフォルト:
        ""
      • pkColumnValue

        StringSE pkColumnValue
        (オプション)この生成された値のセットを、テーブルに格納される可能性のある他の値と区別する、ジェネレーターテーブルの主キー値。

        デフォルトは、ジェネレーターテーブルの主キー列に格納するプロバイダーが選択した値です。

        デフォルト:
        ""
      • initialValue

        int initialValue
        (オプション)最後に生成された値を格納する列を初期化するために使用される初期値。
        デフォルト:
        0
      • allocationSize

        int allocationSize
        (オプション)ジェネレーターから ID 番号を割り当てるときにインクリメントする量。
        デフォルト:
        50
      • uniqueConstraints

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

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

        デフォルト:
        {}
      • indexes

        Index[] indexes
        (オプション)テーブルのインデックス。これらは、テーブル生成が有効な場合にのみ使用されます。主キーインデックスは自動的に作成されるため、主キーのインデックスを指定する必要はありません。
        導入:
        2.1
        デフォルト:
        {}