public class AbstractCondition<T> extends Object implements Condition<T>, Serializable, Cloneable
| 限定符和类型 | 字段和说明 |
|---|---|
protected List<String> |
columnList
column字段
|
protected List<String> |
groupByList
groupBy字段
|
protected List<FieldFragmentEntry> |
havingList
having字段
|
protected List<FieldFragmentEntry> |
orderByList
orderBy字段
|
Query |
query
查询对象
|
protected List<FieldFragmentEntry> |
whereList
where语句
|
| 构造器和说明 |
|---|
AbstractCondition(Query query) |
| 限定符和类型 | 方法和说明 |
|---|---|
Condition<T> |
addBetweenQuery(String field,
Object start,
Object end)
添加between语句
|
Condition<T> |
addColumn(Condition subQuery)
添加select子查询
|
Condition<T> |
addColumn(Condition subQuery,
String columnNameAlias)
添加select子查询
|
Condition<T> |
addColumn(String... fields)
添加自定义字段,具体映射规则请看Condition类的JavaDoc注释
|
Condition<T> |
addEmptyQuery(String field)
添加空查询
|
Condition<T> |
addExistSubQuery(Condition subQuery)
添加exist子查询
|
Condition<T> |
addInQuery(String field,
Collection values)
添加范围查询语句
|
Condition<T> |
addInQuery(String field,
Object... values)
添加范围查询语句
|
Condition<T> |
addInQuery(String field,
String inQuery)
添加范围查询语句
|
Condition<T> |
addLikeQuery(String field,
Object value)
添加Like查询
|
Condition<T> |
addNotEmptyQuery(String field)
添加非空查询
|
Condition<T> |
addNotExistSubQuery(Condition subQuery)
添加not exist子查询
|
Condition<T> |
addNotInQuery(String field,
Collection values)
添加范围查询语句
|
Condition<T> |
addNotInQuery(String field,
Object... values)
添加范围查询语句
|
Condition<T> |
addNotInQuery(String field,
String inQuery)
添加范围查询语句
|
Condition<T> |
addNotLikeQuery(String field,
Object value)
添加Not Like查询
|
Condition<T> |
addNotNullQuery(String field)
添加非空查询
|
Condition<T> |
addNullQuery(String field)
添加空查询
|
Condition<T> |
addQuery(String field,
Object value)
添加字段查询
|
Condition<T> |
addQuery(String field,
String operator,
Object value)
添加字段查询
|
Condition<T> |
addRawQuery(String query,
Object... parameterList)
自定义查询语句,具体映射规则请看此
Condition |
Condition<T> |
addRawUpdate(String update,
Object... parameterList)
自定义更新语句,具体映射规则请看此
Condition |
Condition<T> |
addSubQuery(String field,
String operator,
Condition subQuery)
添加where子查询
|
Condition<T> |
addUpdate(String field,
Object value)
添加更新字段,用于
Response.update()方法 |
AbstractCondition |
clone()
执行并返回Response实例
|
Condition<T> |
compositField()
返回子表实体类字段信息
|
<E> SubCondition<E,T> |
crossJoinTable(Class<E> clazz)
cross join 关联表,获取笛卡尔积
调用本方法时请先查看Condition类JavaDoc注释
|
SubCondition<?,T> |
crossJoinTable(String tableName)
cross join 关联表,获取笛卡尔积
调用本方法时请先查看Condition类JavaDoc注释
|
Condition<T> |
distinct()
添加distinct关键字
|
Condition<T> |
excludeColumn(String... excludeFields)
排除指定字段
|
Response<T> |
execute()
执行并返回Response实例
|
Query |
getQuery()
获取Condition信息
|
Condition<T> |
groupBy(String... fields)
添加分组查询
|
Condition<T> |
having(String having,
Object... parameterList)
添加having查询
调用本方法时请先查看Condition类JavaDoc注释
|
Condition<T> |
having(String field,
String operator,
Condition subQuery)
添加having子查询
调用本方法时请先查看Condition类JavaDoc注释
|
<E> SubCondition<E,T> |
joinTable(Class<E> clazz,
String primaryField,
String joinTableField)
关联表查询
调用本方法时请先查看Condition类JavaDoc注释
|
<E> SubCondition<E,T> |
joinTable(Class<E> clazz,
String primaryField,
String joinTableField,
String compositField)
关联表查询
调用本方法时请先查看Condition类JavaDoc注释
|
<E> SubCondition<E,T> |
joinTable(Condition<E> joinCondition,
String primaryField,
String joinConditionField)
关联子查询
调用本方法时请先查看Condition类JavaDoc注释
调用本方法将在sql语句中拼接如下字符串
join #{condition子表} as t1 on t.primaryField = t1.joinTableField
|
SubCondition<?,T> |
joinTable(String tableName,
String primaryField,
String joinTableField)
关联表查询
调用本方法时请先查看Condition类JavaDoc注释
调用本方法将在sql语句中拼接如下字符串
join #{clazz} as t1 on t.primaryField = t1.joinTableField
|
LambdaCondition<T> |
lambdaCondition()
获取lambdaCondition对象
|
Condition<T> |
limit(long offset,
long limit)
分页操作
请注意,oracle数据库调用分页方法后请直接执行execute方法
|
Condition<T> |
or()
添加Or查询条件,返回一个新的OrCondition对象
在返回Condition对象上添加的查询条件,会以or(......)的方式拼接到SQL字符串上.
|
Condition<T> |
or(String or,
Object... parameterList)
添加or查询,具体映射规则请看此
Condition |
Condition<T> |
order(String field,
String asc)
设置指定字段排序方式
|
Condition<T> |
orderBy(String... fields)
根据指定字段升序排列
|
Condition<T> |
orderByDesc(String... fields)
根据指定字段降序排列
|
Condition<T> |
page(int pageNum,
int pageSize)
分页操作
请注意,oracle数据库调用分页方法后请直接执行execute方法
|
Condition<T> |
perBatchCommit(int perBatchCommit)
批量插入时单次批量插入个数
|
Condition<T> |
setColumnTypeMapping(java.util.function.Function<Property,Class> queryColumnTypeMapping)
设置返回列类型转换
|
Condition<T> |
tableAliasName(String tableAliasName)
设置主表别名
|
String |
toString() |
Condition<T> |
union(Condition<T> condition)
添加联合查询,需确保返回字段个数和含义一致
默认union类型为 union
|
Condition<T> |
union(Condition<T> condition,
UnionType unionType)
添加联合查询,需确保返回字段个数和含义一致
|
protected List<FieldFragmentEntry> whereList
protected List<FieldFragmentEntry> havingList
protected List<FieldFragmentEntry> orderByList
public transient Query query
public AbstractCondition(Query query)
public Condition<T> tableAliasName(String tableAliasName)
ConditiontableAliasName 在接口中 Condition<T>tableAliasName - 主表别名public Condition<T> addNullQuery(String field)
ConditionaddNullQuery 在接口中 Condition<T>field - 指明哪个字段为Nullpublic Condition<T> addNotNullQuery(String field)
ConditionaddNotNullQuery 在接口中 Condition<T>field - 指明哪个字段不为Nullpublic Condition<T> addEmptyQuery(String field)
ConditionaddEmptyQuery 在接口中 Condition<T>field - 指明哪个字段不为空字符串public Condition<T> addNotEmptyQuery(String field)
ConditionaddNotEmptyQuery 在接口中 Condition<T>field - 指明哪个字段不为空字符串public Condition<T> addInQuery(String field, String inQuery)
ConditionaddInQuery 在接口中 Condition<T>field - 字段名inQuery - 英文逗号隔开的字段值public Condition<T> addInQuery(String field, Object... values)
ConditionaddInQuery 在接口中 Condition<T>field - 字段名values - 指明在该范围内的值public Condition<T> addInQuery(String field, Collection values)
ConditionaddInQuery 在接口中 Condition<T>field - 字段名values - 指明在该范围内的值public Condition<T> addNotInQuery(String field, String inQuery)
ConditionaddNotInQuery 在接口中 Condition<T>field - 字段名inQuery - 英文逗号隔开的字段值public Condition<T> addNotInQuery(String field, Object... values)
ConditionaddNotInQuery 在接口中 Condition<T>field - 字段名values - 指明在不该范围内的值public Condition<T> addNotInQuery(String field, Collection values)
ConditionaddNotInQuery 在接口中 Condition<T>field - 字段名values - 指明在不该范围内的值public Condition<T> addBetweenQuery(String field, Object start, Object end)
ConditionaddBetweenQuery 在接口中 Condition<T>field - 字段名start - 范围开始值end - 范围结束值public Condition<T> addLikeQuery(String field, Object value)
ConditionaddLikeQuery 在接口中 Condition<T>field - 字段名value - 字段值public Condition<T> addNotLikeQuery(String field, Object value)
ConditionaddNotLikeQuery 在接口中 Condition<T>field - 字段名value - 字段值public Condition<T> addQuery(String field, String operator, Object value)
Conditionpublic Condition<T> addRawQuery(String query, Object... parameterList)
ConditionConditionaddRawQuery 在接口中 Condition<T>query - 子查询条件,可使用?占位符parameterList - 占位符参数列表,可为nullpublic Condition<T> addSubQuery(String field, String operator, Condition subQuery)
ConditionaddSubQuery 在接口中 Condition<T>field - 字段名operator - 操作符,可为>,>=,=,<<=subQuery - 子查询语句public Condition<T> addExistSubQuery(Condition subQuery)
ConditionaddExistSubQuery 在接口中 Condition<T>subQuery - 子查询语句public Condition<T> addNotExistSubQuery(Condition subQuery)
ConditionaddNotExistSubQuery 在接口中 Condition<T>subQuery - 子查询语句public Condition<T> addColumn(String... fields)
Conditionpublic Condition<T> excludeColumn(String... excludeFields)
ConditionexcludeColumn 在接口中 Condition<T>excludeFields - 指定主表排除字段public Condition<T> setColumnTypeMapping(java.util.function.Function<Property,Class> queryColumnTypeMapping)
ConditionsetColumnTypeMapping 在接口中 Condition<T>queryColumnTypeMapping - 列类型转换函数,参数为列信息,返回列的类型public Condition<T> addColumn(Condition subQuery, String columnNameAlias)
Conditionpublic Condition<T> addUpdate(String field, Object value)
ConditionResponse.update()方法public Condition<T> addRawUpdate(String update, Object... parameterList)
ConditionConditionaddRawUpdate 在接口中 Condition<T>update - 子查询条件,可使用?占位符parameterList - 占位符参数列表,可为nullpublic Condition<T> union(Condition<T> condition)
Conditionpublic Condition<T> union(Condition<T> condition, UnionType unionType)
Conditionpublic Condition<T> or()
Condition在返回Condition对象上添加的查询条件,会以or(......)的方式拼接到SQL字符串上.
Condition condition= dao.query(User.class);
condition.or().addQuery("username","quickdao")
.addQuery("password","123456");
//继续对主condition进行操作
condition.....
以上代码最终拼接字符串为
or (t.username = 'quickado' and t.password = '123456')public Condition<T> or(String or, Object... parameterList)
ConditionConditionpublic Condition<T> having(String having, Object... parameterList)
Condition调用本方法时请先查看Condition类JavaDoc注释
public Condition<T> having(String field, String operator, Condition subQuery)
Condition调用本方法时请先查看Condition类JavaDoc注释
public <E> SubCondition<E,T> crossJoinTable(Class<E> clazz)
Condition调用本方法时请先查看Condition类JavaDoc注释
crossJoinTable 在接口中 Condition<T>clazz - 待关联的子表public SubCondition<?,T> crossJoinTable(String tableName)
Condition调用本方法时请先查看Condition类JavaDoc注释
crossJoinTable 在接口中 Condition<T>tableName - 待关联的子表public <E> SubCondition<E,T> joinTable(Class<E> clazz, String primaryField, String joinTableField)
Condition调用本方法时请先查看Condition类JavaDoc注释
public <E> SubCondition<E,T> joinTable(Class<E> clazz, String primaryField, String joinTableField, String compositField)
Condition调用本方法时请先查看Condition类JavaDoc注释
public <E> SubCondition<E,T> joinTable(Condition<E> joinCondition, String primaryField, String joinConditionField)
Condition调用本方法时请先查看Condition类JavaDoc注释
调用本方法将在sql语句中拼接如下字符串
join #{condition子表} as t1 on t.primaryField = t1.joinTableField
public SubCondition<?,T> joinTable(String tableName, String primaryField, String joinTableField)
Condition调用本方法时请先查看Condition类JavaDoc注释
调用本方法将在sql语句中拼接如下字符串
join #{clazz} as t1 on t.primaryField = t1.joinTableField
public Condition<T> orderByDesc(String... fields)
ConditionorderByDesc 在接口中 Condition<T>fields - 降序排列字段名public Condition<T> limit(long offset, long limit)
Conditionpublic Condition<T> page(int pageNum, int pageSize)
Conditionpublic Condition<T> compositField()
ConditioncompositField 在接口中 Condition<T>cn.schoolwow.quickdao.dao.dql.condition.Condition#joinTable(Class, String, String)} ()},
cn.schoolwow.quickdao.dao.dql.condition.Condition#joinTable(Class, String, String, String)} ()}public Condition<T> perBatchCommit(int perBatchCommit)
ConditionperBatchCommit 在接口中 Condition<T>perBatchCommit - 指定单次批量插入个数public LambdaCondition<T> lambdaCondition()
ConditionlambdaCondition 在接口中 Condition<T>public AbstractCondition clone()
ConditionCopyright © 2023. All rights reserved.