Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
JPQL文には,SELECT文とUPDATE文,DELETE文があります。
JPQL文は,動的に指定したり,アノテーションやO/Rマッピングファイルのタグで静的に定義したりすることができます。また,JPQLのすべての文でパラメタの指定ができます。
JPQLは型付き言語で,すべての式は型を持ちます。式の型は,式の構成や識別変数で定義された抽象スキーマ型,永続化フィールドとリレーションシップを評価する型,およびリテラル型で構成されています。なお,構文の文法については,「付録D JPQLのBNF」を参照してください。
JPQLでは,エンティティを対象にクエリを発行します。そのため,クエリでは対象となるエンティティの抽象スキーマを定義する必要があります。エンティティの抽象スキーマ型は,アノテーションまたはO/Rマッピングファイルによって提供されるエンティティクラスとO/Rマッピングの情報によって定義されます。
抽象スキーマ型とは,エンティティクラスのことを指します。エンティティクラスを構成するものとして,フィールドや,アノテーションなどのO/Rマッピング情報があります。
エンティティの抽象スキーマ型は次に示すフィールドを持ちます。
JPQLでは,エンティティを示すために,その抽象スキーマ型を指定する必要があります。抽象スキーマ型を示すための名前を抽象スキーマ名といいます。抽象スキーマ名は@Entityのname属性(またはO/Rマッピングファイルの<entity>タグのname属性)で定義します。name属性が指定されなかった場合は,エンティティクラスの(パッケージ名抜きの)クラス名となります。
抽象スキーマ名は,永続化ユニット単位で固有となります。
クエリのドメインは,永続化ユニット内で定義されたすべてのエンティティの抽象スキーマ型を参照できます。抽象スキーマ型の中で定義されている関連フィールドによって,ほかの関連するエンティティの抽象スキーマ型を参照できます。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.