パッケージ jakarta.persistence

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


@TargetSE(TYPESE) @RetentionSE(RUNTIMESE) public @interface Converter
アノテーションが付けられたクラスがコンバーターであることを宣言し、コンバーターが自動的に適用されるかどうかを指定します。

すべてのコンバータークラスは AttributeConverter を実装する必要があり、Converter アノテーションを付けるか、オブジェクト / リレーショナルマッピング記述子でコンバーターとして宣言する必要があります。コンバーターのターゲット型は、AttributeConverter の最初の型パラメーターの実際の型引数によって決定されます。

autoApply = true の場合、永続化プロバイダーは、Convert アノテーション (または XML 同等物) によって変換がオーバーライドされる属性を除き、永続化ユニット内のエンティティに属する指定されたターゲット型のマップされたすべての属性にコンバーターを自動的に適用する必要があります。Convert アノテーションを使用して、属性ごとに自動適用変換をオーバーライドまたは無効にすることができます。

  • コンバーターが属性に適用されるかどうかを判断する際、プロバイダーはプリミティブ型とラッパー型を同等のものとして扱う必要があります。
  • コンバーターは、id 属性バージョン属性、関連属性、明示的に Enumerated または Temporal のアノテーションが付けられた (または XML 経由でそのように指定された) 属性には決して適用されません。
  • コンバーターは、@Convert(disableConversion=true) アノテーションが付けられた属性、または Convert アノテーションによって別のコンバーターが明示的に指定されている属性には決して適用されません。

autoApply = false の場合、コンバーターは、Convert アノテーション (または対応する XML 要素) によって変換が明示的に有効になっているターゲット型の属性にのみ適用されます。

同じターゲット型に対して複数のコンバーターが定義されている場合は、Convert.converter() を使用してどのコンバーターが適用されるかを明示的に指定する必要があります。

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

    オプション要素
    修飾子と型
    オプションの要素
    説明
    boolean
    アノテーション付きコンバーターをターゲット型の属性に自動的に適用するかどうかを指定します。
  • 要素の詳細

    • autoApply

      boolean autoApply
      アノテーション付きコンバーターをターゲット型の属性に自動的に適用するかどうかを指定します。
      デフォルト:
      false