パッケージ jakarta.persistence

アノテーションインターフェース OrderColumn


@TargetSE({METHODSE,FIELDSE}) @RetentionSE(RUNTIMESE) public @interface OrderColumn
リストの永続的な順序を維持するために使用される列を指定します。永続性プロバイダーは、取得時およびデータベース内で順序を維持する責任があります。永続性プロバイダーは、データベースにフラッシュするときに順序を更新して、リストに影響する挿入、削除、順序変更を反映する責任があります。

OrderColumn アノテーションは、OneToMany または ManyToMany 関連、または要素コレクションで指定されます。OrderColumn アノテーションは、順序付けされるコレクションを参照する関連の側で指定されます。order 列は、エンティティまたは埋め込みクラスの状態の一部として表示されません。

OrderBy アノテーションは、永続状態として表示され、アプリケーションによって維持される順序付けに使用する必要があります。OrderColumn が指定されている場合、OrderBy アノテーションは使用されません。

順序列は整数型である必要があります。永続化プロバイダーは、関連付けまたは要素のコレクションを更新するときに、順序列の値の連続した (非スパースな) 順序を維持します。最初の要素の順序列の値は 0 です。

例:

導入:
2.0
関連事項:
  • オプション要素の概要

    オプション要素
    修飾子と型
    オプションの要素
    説明
    (オプション)列の DDL を生成するときに使用される SQL フラグメント。
    boolean
    (オプション)永続プロバイダーによって生成された SQL INSERT ステートメントに列が含まれるかどうか。
    (オプション)順序列の名前。
    boolean
    (オプション)データベース列が null 可能かどうか。
    (オプション) この列を宣言する、生成された DDL に追加される SQL フラグメント。
    boolean
    (オプション)永続プロバイダーによって生成された SQL UPDATE ステートメントに列が含まれるかどうか。
  • 要素の詳細

    • name

      StringSE name
      (オプション) 順序付け列の名前。デフォルトは、参照しているプロパティまたはフィールドの名前を連結したものになります。"_"; "ORDER"。
      デフォルト:
      ""
    • nullable

      boolean nullable
      (オプション)データベース列が null 可能かどうか。
      デフォルト:
      true
    • insertable

      boolean insertable
      (オプション)永続プロバイダーによって生成された SQL INSERT ステートメントに列が含まれるかどうか。
      デフォルト:
      true
    • updatable

      boolean updatable
      (オプション)永続プロバイダーによって生成された SQL UPDATE ステートメントに列が含まれるかどうか。
      デフォルト:
      true
    • columnDefinition

      StringSE columnDefinition
      (オプション)列の DDL を生成するときに使用される SQL フラグメント。デフォルトは生成された SQL で、推定型の列が作成されます。
      デフォルト:
      ""
    • options

      StringSE options
      (オプション) この列を宣言する、生成された DDL に追加される SQL フラグメント。columnDefinition() と組み合わせて使用することはできません。
      導入:
      3.2
      デフォルト:
      ""