public interface SubCondition<T>
| 限定符和类型 | 方法和说明 |
|---|---|
SubCondition<T> |
addBetweenQuery(String field,
Object start,
Object end)
添加between语句
|
SubCondition<T> |
addEmptyQuery(String field)
添加空查询
|
SubCondition<T> |
addInQuery(String field,
List values)
添加范围查询语句
|
SubCondition<T> |
addInQuery(String field,
Object[] values)
添加范围查询语句
|
SubCondition<T> |
addLikeQuery(String field,
Object value)
添加Like查询
|
SubCondition<T> |
addNotEmptyQuery(String field)
添加非空查询
|
SubCondition<T> |
addNotInQuery(String field,
List values)
添加范围查询语句
|
SubCondition<T> |
addNotInQuery(String field,
Object[] values)
添加范围查询语句
|
SubCondition<T> |
addNotNullQuery(String field)
添加非空查询
|
SubCondition<T> |
addNullQuery(String field)
添加空查询
|
SubCondition<T> |
addQuery(String query)
添加自定义查询条件
调用此方法您需要知道以下几点
实体类字段使用驼峰式命名映射到数据库中.例如字段firstName映射到数据库后字段名为first_name
对于所有的查询语句,主表别名为t,使用join方法添加的表按照添加顺序依次为t1,t2,t3......
|
SubCondition<T> |
addQuery(String field,
Object value)
添加字段查询
|
SubCondition<T> |
addQuery(String field,
String operator,
Object value)
添加字段查询
|
Condition<T> |
done()
返回主表
|
SubCondition<T> |
doneSubCondition()
返回父表
|
SubCondition<T> |
fullJoin()
全外连接
|
SubCondition<T> |
joinTable(Class clazz,
String primaryField,
String joinTableField)
关联表查询,子表可再次关联子表
当子表关联子表时,我们称原子表为父表,关联表为子表
父表,调用本方法的表
子表,依据关联顺序别名依次为t1,t2,t3......
|
SubCondition<T> |
joinTable(Class clazz,
String primaryField,
String joinTableField,
String compositField)
关联表查询,手动指定子表关联字段
主表,表别名为t
子表,依据关联顺序别名依次为t1,t2,t3......
|
SubCondition<T> |
leftJoin()
左外连接
|
SubCondition<T> |
orderBy(String field)
根据指定字段升序排列
|
SubCondition<T> |
orderByDesc(String field)
根据指定字段降序排列
|
SubCondition<T> |
rightJoin()
右外连接
|
SubCondition<T> leftJoin()
SubCondition<T> rightJoin()
SubCondition<T> fullJoin()
SubCondition<T> joinTable(Class clazz, String primaryField, String joinTableField)
调用本方法将在sql语句中拼接如下字符串 join #{clazz} as t1 on t.primaryField = t1.joinTableField
本方法默认关联主表中唯一一个类型为子表的成员变量,若出现多个相同的子表成员变量,则会抛出异常.例如以下代码:
Parent{
long id;
}
Child{
long id;
long parentId;
Parent parent;
}
joinTable(Parent.class,"parentId","id");
本方法会自动关联Child类的唯一一个子表成员变量的parent属性
注意:需要返回关联实体类字段时,需要调用Condition.compositField()方法才会返回关联实体类对象
clazz - 待关联的子表primaryField - 主表关联字段joinTableField - 子表关联字段Condition#joinTable(Class, String, String)}SubCondition<T> joinTable(Class clazz, String primaryField, String joinTableField, String compositField)
调用本方法将在sql语句中拼接如下字符串 join #{clazz} as t1 on t.primaryField = t1.joinTableField
本方法用于手动指定需要关联的子表实体类成员变量名.当出现多个相同的子表成员变量,需要手动指定关联实体类成员变量.例如以下代码:
Parent{
long id;
}
Child{
long id;
long fatherId;
long motherId;
Parent father;
Parent mother;
}
joinTable(Parent.class,"fatherId","id","father");
joinTable(Parent.class,"motherId","id","mother");
注意:需要返回关联实体类字段时,需要调用Condition.compositField()方法才会返回关联实体类对象
clazz - 待关联的子表primaryField - 主表关联字段joinTableField - 子表关联字段compositField - 子表实体类成员变量名Condition#joinTable(Class, String, String, String)}SubCondition<T> addNullQuery(String field)
field - 指明哪个字段为NullSubCondition<T> addNotNullQuery(String field)
field - 指明哪个字段不为NullSubCondition<T> addEmptyQuery(String field)
field - 指明哪个字段不为空字符串SubCondition<T> addNotEmptyQuery(String field)
field - 指明哪个字段不为空字符串SubCondition<T> addInQuery(String field, Object[] values)
field - 字段名values - 指明在该范围内的值SubCondition<T> addInQuery(String field, List values)
field - 字段名values - 指明在该范围内的值SubCondition<T> addNotInQuery(String field, Object[] values)
field - 字段名values - 指明在不该范围内的值SubCondition<T> addNotInQuery(String field, List values)
field - 字段名values - 指明在不该范围内的值SubCondition<T> addBetweenQuery(String field, Object start, Object end)
field - 字段名start - 范围开始值end - 范围结束值SubCondition<T> addLikeQuery(String field, Object value)
field - 字段名value - 字段值SubCondition<T> addQuery(String query)
调用此方法您需要知道以下几点
query - 子查询条件SubCondition<T> addQuery(String field, Object value)
field - 字段名value - 字段值SubCondition<T> addQuery(String field, String operator, Object value)
field - 字段名operator - 操作符,可为>,>=,=,<<=value - 字段值SubCondition<T> orderBy(String field)
field - 升序排列字段名SubCondition<T> orderByDesc(String field)
field - 降序排列字段名SubCondition<T> doneSubCondition()
SubCondition#joinTable(Class, String, String)}Copyright © 2019. All rights reserved.