org.seasar.kuina.dao.criteria
クラス CriteriaOperations

java.lang.Object
  上位を拡張 org.seasar.kuina.dao.criteria.CriteriaOperations

public abstract class CriteriaOperations
extends Object

JPQLを構築するための操作を定義したクラスです.

このクラスはメソッドをstatic importして使われることを想定しています.

以下に例を示します.太字になっているのが本クラスの提供するメソッドです.

 List<Employee> list = 
     select().from(Employee.class).getResultList(em);
 
 List<Employee> list = 
     select("e").from(join(Employee.class, "e").inner("e.department", "")).getResultList(em);
 
 Long result = 
     select(count("e")).from(Employee.class, "e").getSingleResult(em);
 
 List<Employee> list = 
     select().from(Employee.class, "e")
             .where(between("e.height", 150, 170),
                    or(lt("e.weight", 45), gt("e.weight", 70)))
             .getResultList(em);
 

作成者:
koichik

メソッドの概要
static FunctionReturningNumerics abs(SimpleArithmeticExpression number)
          ABS関数を使った式を作成します.
static FunctionReturningNumerics abs(String number)
          ABS関数を使った式を作成します.
static SimpleArithmeticExpression add(Number lhs, Number rhs)
          二項の+を使った式を作成します.
static SimpleArithmeticExpression add(Number lhs, SimpleArithmeticExpression rhs)
          二項の+を使った式を作成します.
static SimpleArithmeticExpression add(Number lhs, String rhs)
          二項の+を使った式を作成します.
static SimpleArithmeticExpression add(SimpleArithmeticExpression lhs, Number rhs)
          二項の+を使った式を作成します.
static SimpleArithmeticExpression add(SimpleArithmeticExpression lhs, SimpleArithmeticExpression rhs)
          二項の+を使った式を作成します.
static SimpleArithmeticExpression add(SimpleArithmeticExpression lhs, String rhs)
          二項の+を使った式を作成します.
static SimpleArithmeticExpression add(String lhs, Number rhs)
          二項の+を使った式を作成します.
static SimpleArithmeticExpression add(String lhs, SimpleArithmeticExpression rhs)
          二項の+を使った式を作成します.
static SimpleArithmeticExpression add(String lhs, String rhs)
          二項の+を使った式を作成します.
static IdentificationVariableDeclaration alias(Class<?> entityClass, String alias)
          指定されたabstract_schema_nameとidentification_variableを持つidentification_variable_declarationを作成します.
static AllOrAnyExpression all(Subquery subquery)
          ALLを使った式を作成します.
static ConditionalTerm and(ConditionalExpression... expressions)
          指定されたconditional_expressionをAND演算子で連結したconditional_expressionを作成します.
static AllOrAnyExpression any(Subquery subquery)
          ANYを使った式を作成します.
static OrderbyItem asc(PathExpression path)
          昇順のORDER BY項目を作成します.
static OrderbyItem asc(String path)
          昇順のORDER BY項目を作成します.
static AggregateExpression avg(PathExpression path)
          集計関数AVGを適用した式を作成します.
static AggregateExpression avg(String path)
          集計関数AVGを適用した式を作成します.
static AggregateExpression avgDistinct(PathExpression path)
          DISTINCTを含んだ集計関数AVGを適用した式を作成します.
static AggregateExpression avgDistinct(String path)
          DISTINCTを含んだ集計関数AVGを適用した式を作成します.
static BetweenExpression between(String operand, ArithmeticExpression from, ArithmeticExpression to)
          BETWEENを使った式を作成します.
static BetweenExpression between(String operand, DatetimeExpression from, DatetimeExpression to)
          BETWEENを使った式を作成します.
static BetweenExpression between(String operand, Number from, Number to)
          BETWEENを使った式を作成します.
static BetweenExpression between(String operand, StringExpression from, StringExpression to)
          BETWEENを使った式を作成します.
static BetweenExpression between(String operand, String from, String to)
          BETWEENを使った式を作成します.
static FunctionReturningStrings concat(StringPrimary string1, String string2)
          CONCAT関数を使った式を作成します.
static FunctionReturningStrings concat(StringPrimary string1, StringPrimary string2, StringPrimary... rest)
          CONCAT関数を使った式を作成します.
static FunctionReturningStrings concat(String string1, String string2)
          CONCAT関数を使った式を作成します.
static FunctionReturningStrings concat(String string1, StringPrimary string2, StringPrimary... rest)
          CONCAT関数を使った式を作成します.
static LikeExpression contains(StringExpression string, String pattern)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(StringExpression string, StringPrimary pattern)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(StringExpression string, StringPrimary pattern, String escape)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(StringExpression string, StringPrimary pattern, StringExpression escape)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(StringExpression string, String pattern, String escape)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(StringExpression string, String pattern, StringExpression escape)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(String string, String pattern)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(String string, StringPrimary pattern)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(String string, StringPrimary pattern, String escape)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(String string, StringPrimary pattern, StringExpression escape)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(String string, String pattern, String escape)
          LIKEを使って部分一致をテストする式を作成します.
static LikeExpression contains(String string, String pattern, StringExpression escape)
          LIKEを使って部分一致をテストする式を作成します.
static AggregateExpression count(PathExpression path)
          集計関数COUNTを適用した式を作成します.
static AggregateExpression count(String path)
          集計関数COUNTを適用した式を作成します.
static AggregateExpression countDistinct(PathExpression path)
          DISTINCTを含んだ集計関数COUNTを適用した式を作成します.
static AggregateExpression countDistinct(String path)
          DISTINCTを含んだ集計関数COUNTを適用した式を作成します.
static FunctionReturningDatetime currentDate()
          CURRENT_DATE関数を使った式を作成します.
static FunctionReturningDatetime currentTime()
          CURRENT_TIME関数を使った式を作成します.
static FunctionReturningDatetime currentTimestamp()
          CURRENT_TIMESTAMP関数を使った式を作成します.
static OrderbyItem desc(PathExpression path)
          降順のORDER BY項目を作成します.
static OrderbyItem desc(String path)
          降順のORDER BY項目を作成します.
static ArithmeticTerm divide(ArithmeticTerm lhs, ArithmeticFactor rhs)
          二項の/を使った式を作成します.
static ArithmeticTerm divide(ArithmeticTerm lhs, Number rhs)
          二項の/を使った式を作成します.
static ArithmeticTerm divide(ArithmeticTerm lhs, String rhs)
          二項の/を使った式を作成します.
static ArithmeticTerm divide(Number lhs, ArithmeticFactor rhs)
          二項の/を使った式を作成します.
static ArithmeticTerm divide(Number lhs, Number rhs)
          二項の/を使った式を作成します.
static ArithmeticTerm divide(Number lhs, String rhs)
          二項の/を使った式を作成します.
static ArithmeticTerm divide(String lhs, ArithmeticFactor rhs)
          二項の/を使った式を作成します.
static ArithmeticTerm divide(String lhs, Number rhs)
          二項の/を使った式を作成します.
static ArithmeticTerm divide(String lhs, String rhs)
          二項の/を使った式を作成します.
static LikeExpression ends(StringExpression string, String pattern)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(StringExpression string, StringPrimary pattern)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(StringExpression string, StringPrimary pattern, String escape)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(StringExpression string, StringPrimary pattern, StringExpression escape)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(StringExpression string, String pattern, String escape)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(StringExpression string, String pattern, StringExpression escape)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(String string, String pattern)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(String string, StringPrimary pattern)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(String string, StringPrimary pattern, String escape)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(String string, StringPrimary pattern, StringExpression escape)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(String string, String pattern, String escape)
          LIKEを使って後方一致をテストする式を作成します.
static LikeExpression ends(String string, String pattern, StringExpression escape)
          LIKEを使って後方一致をテストする式を作成します.
static ComparisonExpression eq(ArithmeticExpression lhs, AllOrAnyExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(ArithmeticExpression lhs, ArithmeticExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(ArithmeticExpression lhs, Number rhs)
          =を使った式を作成します.
static ComparisonExpression eq(BooleanExpression lhs, AllOrAnyExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(BooleanExpression lhs, boolean rhs)
          =を使った式を作成します.
static ComparisonExpression eq(BooleanExpression lhs, BooleanExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(DatetimeExpression lhs, AllOrAnyExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(DatetimeExpression lhs, DatetimeExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(EntityExpression lhs, AllOrAnyExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(EntityExpression lhs, EntityExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(EnumExpression lhs, AllOrAnyExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(EnumExpression lhs, Enum<?> rhs)
          =を使った式を作成します.
static ComparisonExpression eq(EnumExpression lhs, EnumExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, AllOrAnyExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, ArithmeticExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, boolean rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, BooleanExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, DatetimeExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, EntityExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, EnumExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, Number rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, PathExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, String rhs)
          =を使った式を作成します.
static ComparisonExpression eq(PathExpression lhs, StringExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, AllOrAnyExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, ArithmeticExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, boolean rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, BooleanExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, DatetimeExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, EntityExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, EnumExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(StringExpression lhs, AllOrAnyExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(StringExpression lhs, String rhs)
          =を使った式を作成します.
static ComparisonExpression eq(StringExpression lhs, StringExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, Number rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, PathExpression rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, String rhs)
          =を使った式を作成します.
static ComparisonExpression eq(String lhs, StringExpression rhs)
          =を使った式を作成します.
static ExistsExpression exists(Subquery subquery)
          EXISTSを使った式を作成します.
static ComparisonExpression ge(ArithmeticExpression lhs, AllOrAnyExpression rhs)
          gt>=を使った式を作成します.
static ComparisonExpression ge(ArithmeticExpression lhs, ArithmeticExpression rhs)
          >=を使った式を作成します.
static ComparisonExpression ge(ArithmeticExpression lhs, Number rhs)
          >=を使った式を作成します.
static ComparisonExpression ge(DatetimeExpression lhs, AllOrAnyExpression rhs)
          >=を使った式を作成します.
static ComparisonExpression ge(DatetimeExpression lhs, DatetimeExpression rhs)
          >=を使った式を作成します.
static ComparisonExpression ge(PathExpression lhs, AllOrAnyExpression rhs)
          >=を使った式を作成します.
static ComparisonExpression ge(PathExpression lhs, ArithmeticExpression rhs)
          >=を使った式を作成します.
static ComparisonExpression ge(PathExpression lhs, DatetimeExpression rhs)
          >=を使った式を作成します.
static ComparisonExpression ge(PathExpression lhs, Number rhs)
          >=を使った式を作成します.
static ComparisonExpression ge(PathExpression lhs, PathExpression rhs)
          >