ヘッダーをスキップ
Oracle® Fusion Middleware Oracle TopLink Java Persistence API (JPA)拡張機能リファレンス
12c (12.1.2)
E48005-01
  目次へ移動
目次

前
 
次
 

@StructConverter

@StructConverterを使用して、空間データ型などの複雑なデータベース・タイプを処理するjava.sql.Structタイプのカスタム処理を有効にします。

Oracle TopLinkには、Oracle JGeometry空間データ型を変換するJGeometryConverterクラスが含まれています。


注意:

他のコンバータとは異なり、@StructConverterには独自のインタフェースがあります。


注釈要素

表2-65は、この注釈の要素を示しています。

表2-65 @StructConverterの注釈要素

注釈要素 説明 デフォルト

name

コンバータのStringの名前。この名前が永続性ユニットで一意であることを確認します。

なし

converter

Stringとしてのコンバータ・クラス。このクラスは、org.eclipse.persistence.platform.database.converters.StructConverterインタフェースを実装する必要があります。

なし


使用方法

値属性がStructConverter名に設定されている既存の@Convert注釈を使用できます。この場合、適切な設定がマッピングに適用されます。この設定は、StructConverterが定義されているタイプを使用するすべてのマッピングに必要です。@Convertを使用したマッピングの構成に失敗すると、エラーが発生します。

Oracle TopLinkには、@ObjectTypeConverter@TypeConverterなどのその他のコンバータも含まれます。

例2-105に、@StructConverter注釈を定義する方法を示します。

例2-105 @StructConverter注釈の使用

@StructConverter(
     name="JGeometryConverter"
     converter=JGeometryConverter.class.getName())

すべてのセッションの範囲でエンティティに@StructConverter注釈を指定できます。同じJavaタイプに影響する複数のStructConverter注釈を追加すると、例外がスローされます。@StructConverter注釈は、@Converterと同じネームスペースにあります。@Converterおよび同じ名前の@StructConverterを追加すると、検証の例外がスローされます。

関連項目

詳細は、次を参照してください。