パッケージ jakarta.persistence

アノテーション型 DiscriminatorColumn


  • @TargetSE(TYPESE)
    @RetentionSE(RUNTIMESE)
    public @interface DiscriminatorColumn
    SINGLE_TABLE および JOINED Inheritance マッピング戦略の識別子列を指定します。

    ストラテジーとディスクリミネーター列は、異なる継承ストラテジーが適用されるエンティティクラス階層またはサブ階層のルートでのみ指定されます

    DiscriminatorColumn アノテーションが欠落していて、弁別子列が必要な場合、弁別子列の名前はデフォルトで "DTYPE" になり、弁別子型は DiscriminatorType.STRING になります。

         Example:
    
         @Entity
         @Table(name="CUST")
         @Inheritance(strategy=SINGLE_TABLE)
         @DiscriminatorColumn(name="DISC", discriminatorType=STRING, length=20)
         public class Customer { ... }
    
         @Entity
         public class ValuedCustomer extends Customer { ... }
     
    導入:
    1.0
    関連事項:
    DiscriminatorValue
    • オプション要素のサマリー

      オプション要素  
      修飾子と型 オプションの要素 説明
      StringSEcolumnDefinition
      (オプション)ディスクリミネーター列の DDL を生成するときに使用される SQL フラグメント。
      DiscriminatorTypediscriminatorType
      (オプション)クラス識別子として使用するオブジェクト / 列の型。
      intlength
      (オプション)文字列ベースの識別子型の列の長さ。
      StringSEname
      (オプション)ディスクリミネーターに使用される列の名前。
    • 要素の詳細

      • name

        StringSE name
        (オプション)ディスクリミネーターに使用される列の名前。
        デフォルト:
        "DTYPE"
      • discriminatorType

        DiscriminatorType discriminatorType
        (オプション)クラス識別子として使用するオブジェクト / 列の型。デフォルトは DiscriminatorType.STRING です。
        デフォルト:
        jakarta.persistence.DiscriminatorType.STRING
      • columnDefinition

        StringSE columnDefinition
        (オプション)ディスクリミネーター列の DDL を生成するときに使用される SQL フラグメント。

        指定されたディスクリミネーター型の列を作成するためのデフォルトはプロバイダー生成の SQL です。

        デフォルト:
        ""
      • length

        int length
        (オプション)文字列ベースの識別子型の列の長さ。他の種類の弁別器では無視されます。
        デフォルト:
        31