Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 互換編


12.3.7 mapped-superclass以下の要素

次に示す要素と属性は,要素や属性の対象であるマップドスーパークラスだけに適用されます。

〈この項の構成〉

(1) <mapped-superclass>

mapped-superclass要素は,永続化ユニットのマップドスーパークラスを定義します。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒12 <mapped-superclass>の属性

属性名

任意/必須

説明

class

xsd:string

必須

マップドスーパークラスのクラス名

access

orm:access-type

任意

access属性は,マップドスーパークラスのアクセスタイプを定義します。access属性は,マップドスーパークラスに与えたpersistence-unit-defaults要素(デフォルトとして指定した要素)やentity-mappings要素(永続化ユニット全体に有効な要素)で指定したアクセスタイプを上書きします。※1

metadata-complete※2

xsd:boolean

任意

metadata-complete属性がmapped-superclass要素自身に指定されたら,マップドスーパークラスや,マップドスーパークラスのフィールドやプロパティに指定されたアノテーションは無視されます。

metadata-completeがmapped-superclass要素に指定され,XML要素が省略されると,デフォルト値が有効になります。

注※1 指定値には,PROPERTYまたはFIELDを指定します。エンティティクラスのフィールドに対するアクセス方法の指定については,「8.12.3 エンティティクラスのフィールドに対するアクセス方法の指定」を参照してください。

注※2 アノテーションが指定されている場合,この要素を指定することによって,KDJE55532-Wのメッセージが出力されることがあります。

(2) <id-class>

id-class要素は,マップドスーパークラスで指定した@IdClassを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒13 <id-class>の属性

属性名

任意/必須

説明

class

xsd:string

必須

8.22.22 @IdClass」のvalue属性を参照してください。

(3) <exclude-default-listeners>

exclude-default-listeners要素は,@ExcludeDefaultListenersがマップドスーパークラスに指定されたかどうかに関係なく適用されます。

exclude-default-listeners要素は,マップドスーパークラスとそのサブクラスのデフォルトエンティティリスナを抑止します。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

(4) <exclude-superclass-listeners>

exclude-superclass-listeners要素は,@ExcludeSuperclassListenersがマップドスーパークラスに指定されたかどうかに関係なく適用されます。

exclude-superclass-listeners要素は,マップドスーパークラスとそのサブクラスのスーパークラスリスナを抑止します。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

(5) <entity-listeners>

entity-listeners要素は,マップドスーパークラスの@EntityListenersを上書きします。

ほかの方法で抑止されない場合,これらのリスナはマップドスーパークラスとそのサブクラスで適用します。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

(6) <pre-persist>,<post-persist>,<pre-remove>,<post-remove>,<pre-update>,<post-update>,<post-load>

これらの要素は,マップドスーパークラスで,対応するアノテーションによるライフサイクルコールバックメソッドの定義を上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒14 <pre-persist>,<post-persist>,<pre-remove>,<post-remove>,<pre-update>,<post-update>,<post-load>の属性

属性名

任意/必須

説明

method-name

xsd:string

必須

対象のメソッド名。

(7) <id>

id要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒15 <id>の属性

属性名

任意/必須

説明

name

xsd:string

必須

プライマリキープロパティ,もしくはフィールドであることを指定します。

(8) <embedded-id>

embedded-id要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒16 <embedded-id>の属性

属性名

任意/必須

説明

name

xsd:string

必須

複合プライマリキーであることを指定します。

(9) <basic>

basic要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒17 <basic>の属性

属性名

任意/必須

説明

name

xsd:string

必須

型をマッピングするメソッドおよびフィールドを指定します。

fetch

orm:fetch-type

任意

Fetch戦略の値を指定します。

詳細は「8.22.5 @Basic」のfetch属性を参照してください。

optional

xsd:boolean

任意

フィールド(プロパティ)がnullを使用するかどうかを指定します。

詳細は「8.22.5 @Basic」のoptional属性を参照してください。

(10) <version>

version要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒18 <version>の属性

属性名

任意/必須

説明

name

xsd:string

必須

versionプロパティもしくはフィールドであることを指定します。

(11) <many-to-one>

many-to-one要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒19 <many-to-one>の属性

属性名

任意/必須

説明

name

xsd:string

必須

多対一リレーションシップのメソッドもしくはフィールドであることを指定します。

target-entity

xsd:string

任意

関連するEntityクラスを指定します。

詳細は「8.22.29 @ManyToOne」のtargetEntity属性を参照してください。

fetch

orm:fetch-type

任意

Fetch戦略の値を指定します。

詳細は「8.22.29 @ManyToOne」のfetch属性を参照してください。

optional

xsd:boolean

任意

すべての非プリミティブなフィールドおよびプロパティの値にnullを指定するかどうかを定義します。

詳細は「8.22.29 @ManyToOne」のoptional属性を参照してください。

(12) <one-to-many>

one-to-many要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒20 <one-to-many>の属性

属性名

任意/必須

説明

name

xsd:string

必須

一対多リレーションシップのメソッドまたはフィールド。

target-entity

xsd:string

任意

関連するEntityクラスを指定します。詳細は「8.22.36 @OneToMany」のtargetEntity属性を参照してください。

fetch

orm:fetch-type

任意

Fetch戦略の値を指定します。

詳細は「8.22.36 @OneToMany」のfetch属性を参照してください。

mapped-by

xsd:string

任意

被所有者側のEntityクラスの要素に付与し,所有者側のEntityクラスで関係を保持しているフィールド(プロパティ)名を指定します。

詳細は「8.22.36 @OneToMany」のmappedBy属性を参照してください。

(13) <one-to-one>

one-to-one要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒21 <one-to-one>の属性

属性名

任意/必須

説明

name

xsd:string

必須

一対一リレーションシップのメソッドまたはフィールド。

target-entity

xsd:string

任意

8.22.37 @OneToOne」のtargetEntity属性を参照してください。

fetch

orm:fetch-type

任意

8.22.37 @OneToOne」のfetch属性を参照してください。

optional

xsd:boolean

任意

8.22.37 @OneToOne」のoptional属性を参照してください。

mapped-by

xsd:string

任意

8.22.37 @OneToOne」のmappedBy属性を参照してください。

(14) <many-to-many>

many-to-many要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒22 <many-to-many>の属性

属性名

任意/必須

説明

name

xsd:string

必須

多対多リレーションシップのメソッドまたはフィールド。

target-entity

xsd:string

任意

8.22.28 @ManyToMany」のtargetEntity属性を参照してください。

fetch

orm:fetch-type

任意

8.22.28 @ManyToMany」のfetch属性を参照してください。

mapped-by

xsd:string

任意

8.22.28 @ManyToMany」のmappedBy属性を参照してください。

(15) <embedded>

embedded要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒23 <embedded>の属性

属性名

任意/必須

説明

name

xsd:string

必須

埋め込みオブジェクトであるプロパティまたはフィールド。

(16) <transient>

transient要素は,フィールドやプロパティで指定したマッピングを上書きします。

機能および属性の詳細については,「8.22 javax.persistenceパッケージに含まれるアノテーションのサポート範囲」を参照してください。

指定できる属性を次の表に示します。

表12‒24 <transient>の属性

属性名

任意/必須

説明

name

xsd:string

必須

永続的でないプロパティまたはフィールド。