2.7.23 @Inheritance

<この項の構成>
(1) 説明
(2) 属性

(1) 説明

エンティティの継承階層で使われる継承マッピング戦略を指定するアノテーションです。

@Inheritanceは継承階層の親であるエンティティクラスに指定されます。

CJPAプロバイダで使用できる継承マッピング戦略には,次の2種類があります。

継承マッピング戦略については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「6.13.2 継承マッピング戦略」を参照してください。

適用可能要素は,クラスです。

(2) 属性

@Inheritanceの属性の一覧を次の表に示します。

属性名任意/必須属性の説明
strategy任意継承マッピング戦略の種類を指定する属性です。

CJPAプロバイダで対応する属性の詳細を次に示します。

(a) strategy属性
InheritanceType
説明
エンティティで使用する継承マッピング戦略の種類を指定する属性です。
指定できる値は,次の2種類です。
  • InheritanceType.SINGLE_TABLE:継承階層にあるすべてのクラスを一つのテーブルにマッピングする戦略です。
  • InheritanceType.JOINED:継承階層の最上位(親クラス)は単一の表にマッピングされ,各サブクラスはサブクラス特有のマッピングをする戦略です。
デフォルト値
InheritanceType.SINGLE_TABLE