Hitachi

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


8.22.33 @NamedNativeQuery

〈この項の構成〉

(1) 説明

SQLで名前付きクエリを指定するアノテーションです。エンティティクラスとマップドスーパークラスに適用できます。

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

(2) 属性

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

属性名

任意/必須

属性の説明

name

必須

名前付きクエリの名前を指定する属性です。

query

必須

SQLの文字列を指定する属性です。

hints

任意

@QueryHintの配列を指定する属性です。

resultClass

任意

SQLの結果を反映するクラスを指定する属性です。

resultSetMapping

任意

@SqlResultSetMappingのname属性で指定した名前を指定する属性です。

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

(a) name属性

String

説明

名前付きクエリの名前を指定する属性です。

指定できる値は,文字列です。

デフォルト値

なし

(b) query属性

String

説明

SQLの文字列を指定する属性です。

指定できるSQLは,使用するデータベースの仕様に依存します。

デフォルト値

なし

(c) hints属性

QueryHint[]

説明

@QueryHintの配列を指定する属性です。

指定できる値は,@QueryHintの配列で指定できる範囲です。詳細は,「8.22.48 @QueryHint」を参照してください。

デフォルト値

空の配列

(d) resultClass属性

Class

説明

SQLの結果を反映するクラスを指定する属性です。

resultClass属性は,クエリの実行結果をマッピングしたいクラスがあるときに指定します。resultClass属性とresultSetMapping属性は同時に指定しないでください。

指定できる値は,クラス名です。

デフォルト値

void.class

(e) resultSetMapping属性

String

説明

結果セットを定義した@SqlResultSetMappingのname属性で指定した名前を指定する属性です。

任意の結果セットにSQLの結果をマッピングしたいときに指定します。

resultClass属性とresultSetMapping属性は同時に指定しないでください。

指定できる範囲は,@SqlResultSetMappingのname属性で指定できる範囲です。詳細は,「8.22.52(2)(a) name属性」を参照してください。

デフォルト値

空の文字列