T
- 定義された結果の型public interface CriteriaQuery<T> extends AbstractQuery<T>
CriteriaQuery
インターフェイスはトップレベルのクエリーに固有の機能を定義します。修飾子とタイプ | メソッドと説明 |
---|---|
CriteriaQuery<T> |
distinct(boolean distinct)
重複するクエリーの結果を除去するかどうかを指定します。
|
java.util.List<Order> |
getOrderList()
優先順位に従って順序付け式を返します。
|
java.util.Set<ParameterExpression<?>> |
getParameters()
クエリーのパラメーターを返します。
|
CriteriaQuery<T> |
groupBy(Expression<?>... grouping)
クエリーの結果に対してグループを形成するために使用される式を指定します。
|
CriteriaQuery<T> |
groupBy(java.util.List<Expression<?>> grouping)
クエリーの結果に対してグループを形成するために使用される式を指定します。
|
CriteriaQuery<T> |
having(Expression<java.lang.Boolean> restriction)
クエリーのグループに対応する制限を指定します。
|
CriteriaQuery<T> |
having(Predicate... restrictions)
指定された制限述語の結合に従ってクエリーのグループに対応する制限を指定します。
|
CriteriaQuery<T> |
multiselect(java.util.List<Selection<?>> selectionList)
クエリーの結果から返される選択項目を指定します。
|
CriteriaQuery<T> |
multiselect(Selection<?>... selections)
クエリーの結果から返される選択項目を指定します。
|
CriteriaQuery<T> |
orderBy(java.util.List<Order> o)
クエリーの結果を順序付けするのに使用される順序付け式を指定します。
|
CriteriaQuery<T> |
orderBy(Order... o)
クエリーの結果を順序付けするのに使用される順序付け式を指定します。
|
CriteriaQuery<T> |
select(Selection<? extends T> selection)
クエリーの結果に返される項目を指定します。
|
CriteriaQuery<T> |
where(Expression<java.lang.Boolean> restriction)
指定されたブール式に従ってクエリーの結果を制限するようにクエリーを変更します。
|
CriteriaQuery<T> |
where(Predicate... restrictions)
指定されたブール式に従ってクエリーの結果を制限するようにクエリーを変更します。
|
from, from, getGroupList, getGroupRestriction, getResultType, getRoots, getSelection, isDistinct
getRestriction, subquery
CriteriaQuery<T> select(Selection<? extends T> selection)
注意:文字列ベースのAPIを使用するアプリケーションでは、 取得操作または結合操作の結果の項目でクエリーの結果の型が指定されている場合には、 選択項目の型を指定する必要があります。
例: CriteriaQuery<String> q = cb.createQuery(String.class); Root<Order> order = q.from(Order.class); q.select(order.get("shippingAddress").<String>get("state")); CriteriaQuery<Product> q2 = cb.createQuery(Product.class); q2.select(q2.from(Order.class) .join("items") .<Item,Product>join("product"));
selection
- クエリーの結果に返される項目を指定するSelectionjava.lang.IllegalArgumentException
- 選択項目が複合選択項目であり、複数の選択項目に同じ別名が割り当てられた場合CriteriaQuery<T> multiselect(Selection<?>... selections)
multiselect
メソッドの引数にも依存します。
multiselect
メソッドの引数はタプルや配列値の複合選択項目であってはなりません。
このメソッドのセマンティックスは以下のとおりです。:
CriteriaQuery<Tuple>
である
(つまり、クライテリアクエリーオブジェクトがcreateTupleQuery
メソッドもしくは
createQuery
メソッドにTuple
クラスを引数として渡されて作られた)場合、
multiselect
メソッドの引数に関連するTuple
オブジェクトは指定された順序でインスタンス化され、
クエリーの実行から結果の行ごとに返されます。
CriteriaQuery<X>
である
(つまり、クライテリアクエリーオブジェクトがcreateQuery
メソッドにXクラスを引数として渡されて作られた)場合、
multiselect
メソッドの引数はXのコンストラクタに渡され、X型のインスタンスが行ごとに返されます。
CriteriaQuery<X[]>
である場合、
X[]型のインスタンスが行ごとに返されます。
配列の要素は指定された順序でmultiselect
メソッドの引数に対応します。
CriteriaQuery<Object>
であるかクライテリアクエリーが型の指定なしに作られ、
multiselect
メソッドに一つの引数しか渡されない場合、
Object
型のインスタンスが行ごとに返されます。
CriteriaQuery<Object>
であるかクライテリアクエリーが型の指定なしに作られ、
multiselect
メソッドに二つ以上の引数が渡された場合、
Object[]
型のインスタンスが行ごとに返されます。
配列の要素は指定された順序でmultiselect
メソッドの引数に対応します。
selections
- クエリーによって返される結果に対応する選択項目java.lang.IllegalArgumentException
- 選択項目が不正である、もしくは二つ以上の選択項目に同じエイリアスが指定されていた場合CriteriaQuery<T> multiselect(java.util.List<Selection<?>> selectionList)
クエリーの実行結果の型は、作成されたクライテリアクエリーオブジェクトの型の指定だけではなくmultiselect
メソッドの引数にも依存します。
multiselect
に渡されるListの要素はタプルや配列の値の複合選択項目であってはいけません。
このメソッドのセマンティックスは以下のとおりです。:
CriteriaQuery<Tuple>
である
(つまり、クライテリアクエリーオブジェクトがcreateTupleQuery
メソッドもしくは
createQuery
メソッドにTuple
クラスを引数として渡されて作られた)場合、
multiselect
メソッドに渡されたListの要素に関連するTuple
オブジェクトは指定された順序でインスタンス化され、
クエリーの実行から結果の行ごとに返されます。
CriteriaQuery<X>
である
(つまり、クライテリアクエリーオブジェクトがcreateQuery
メソッドにXクラスを引数として渡されて作られた)場合、
multiselect
メソッドに渡されたListの要素はXのコンストラクタに渡され、X型のインスタンスが行ごとに返されます。
CriteriaQuery<X[]>
である場合、
X[]型のインスタンスが行ごとに返されます。
配列の要素は指定された順序でmultiselect
メソッドに渡されたListの要素に対応します。
CriteriaQuery<Object>
であるかクライテリアクエリーが型の指定なしに作られ、
multiselect
メソッドに一つの要素しか持たないListが渡された場合、
Object
型のインスタンスが行ごとに返されます。
CriteriaQuery<Object>
であるかクライテリアクエリーが型の指定なしに作られ、
multiselect
メソッドに二つ以上の要素を持つListが渡された場合、
Object[]
型のインスタンスが行ごとに返されます。
配列の要素は指定された順序でmultiselect
メソッドに渡されたListの要素に対応します。
selectionList
- クエリーによって返される結果に対応する選択項目の一覧java.lang.IllegalArgumentException
- 選択項目が不正である、もしくは二つ以上の選択項目に同じエイリアスが指定されていた場合CriteriaQuery<T> where(Expression<java.lang.Boolean> restriction)
AbstractQuery
のメソッドの結果型を上書きするだけです。where
インタフェース内 AbstractQuery<T>
restriction
- 単純な、もしくは複合したブール式CriteriaQuery<T> where(Predicate... restrictions)
AbstractQuery
のメソッドの結果型を上書きするだけです。where
インタフェース内 AbstractQuery<T>
restrictions
- 0個以上の制限の述語CriteriaQuery<T> groupBy(Expression<?>... grouping)
AbstractQuery
のメソッドの結果型を上書きするだけです。groupBy
インタフェース内 AbstractQuery<T>
grouping
- 0個以上のグループ化式CriteriaQuery<T> groupBy(java.util.List<Expression<?>> grouping)
AbstractQuery
のメソッドの結果型を上書きするだけです。groupBy
インタフェース内 AbstractQuery<T>
grouping
- 0個以上のグループ化式のリストCriteriaQuery<T> having(Expression<java.lang.Boolean> restriction)
AbstractQuery
のメソッドの結果型を上書きするだけです。having
インタフェース内 AbstractQuery<T>
restriction
- 単純な、もしくは複合したブール式CriteriaQuery<T> having(Predicate... restrictions)
AbstractQuery
のメソッドの結果型を上書きするだけです。having
インタフェース内 AbstractQuery<T>
restrictions
- 0個以上の制限の述語CriteriaQuery<T> orderBy(Order... o)
o
- 0個以上の順序付け式CriteriaQuery<T> orderBy(java.util.List<Order> o)
o
- 0個以上の順序付け式のListCriteriaQuery<T> distinct(boolean distinct)
AbstractQuery
のメソッドの結果型を上書きするだけです。distinct
インタフェース内 AbstractQuery<T>
distinct
- クエリーの結果から重複した結果を取り除くべきか、保持するべきかを指定するブール値java.util.List<Order> getOrderList()
java.util.Set<ParameterExpression<?>> getParameters()
Translated by @megascus.