public abstract class AbstractSelectLambda<R,T,P> extends BasicQueryCompare<R,T,P> implements QueryFunc<R,T,P>
| 限定符和类型 | 字段和说明 |
|---|---|
protected MergeSqlSegment |
customSelect |
protected MergeSqlSegment |
groupByList |
protected MergeSqlSegment |
orderByList |
queryParam, queryTemplatedbType| 构造器和说明 |
|---|
AbstractSelectLambda(Class<?> exampleType,
TableMapping<?> tableMapping,
LambdaTemplate jdbcTemplate) |
| 限定符和类型 | 方法和说明 |
|---|---|
R |
applySelect(String select)
拼接 sql 方式来自定义 select 和 form 之间的语句,一旦使用自定义那么 selectAll 和 select 将会失效。
|
R |
asc(P... orderBy)
排序(升序),类似:order by xxx desc
|
protected BoundSql |
buildBoundSql(SqlDialect dialect) |
R |
desc(P... orderBy)
排序(降序),类似:order by xxx desc
|
protected abstract TableReader<T> |
getTableReader() |
R |
groupBy(P... groupBy)
分组,类似:group by xxx
|
R |
initPage(int pageSize,
int pageNumber)
生成分页对象
|
protected void |
lockGroupBy() |
protected void |
lockOrderBy() |
R |
orderBy(P... orderBy)
排序,类似:order by xxx
|
Page |
pageInfo()
获取对应的分页对象
|
<V> V |
query(ResultSetExtractor<V> rse)
执行查询,并通过 ResultSetExtractor 转换结果集。
|
void |
query(RowCallbackHandler rch)
执行查询,并通过 RowCallbackHandler 处理结果集。
|
<V> List<V> |
query(RowMapper<V> rowMapper)
执行查询,并使用 RowMapper 处理结果集。
|
int |
queryForCount()
生成 select count() 查询语句并查询总数。
|
long |
queryForLargeCount()
生成 select count() 查询语句并查询总数。
|
List<T> |
queryForList()
执行查询,并结果将被映射到一个列表(一个条目为每一行)的对象,列表中每一条记录都是
elementType参数指定的类型对象。 |
Map<String,Object> |
queryForMap()
执行查询,并返回一个Map结果。
|
List<Map<String,Object>> |
queryForMapList() |
T |
queryForObject()
执行查询,并返回一个结果。
|
R |
select(P... properties)
查询部分属性
在分组查询下,返回所有分组列而不是所有列
selectAll、select、applySelect 三个当同时调用时只有最后一个生效
|
R |
selectAll()
查询所有属性
在分组查询下,返回所有分组列而不是所有列
selectAll、select、applySelect 三个当同时调用时只有最后一个生效
|
R |
usePage(Page pageInfo)
设置分页信息
|
addCondition, and, apply, between, eq, format, formatLikeValue, formatSegment, formatValue, ge, gt, in, isNotNull, isNull, le, like, likeLeft, likeRight, lockCondition, lt, ne, nested, notBetween, notIn, notLike, notLikeLeft, notLikeRight, orbuildColumnByLambda, buildColumnByProperty, dialect, exampleIsMap, exampleType, getBoundSql, getBoundSql, getJdbcTemplate, getPropertyName, getSelf, getTableMapping, isQualifier, setDialect, useQualifierclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetBoundSql, getBoundSqland, orprotected final MergeSqlSegment customSelect
protected final MergeSqlSegment groupByList
protected final MergeSqlSegment orderByList
public AbstractSelectLambda(Class<?> exampleType, TableMapping<?> tableMapping, LambdaTemplate jdbcTemplate)
public R selectAll()
QueryFunc在分组查询下,返回所有分组列而不是所有列
selectAll、select、applySelect 三个当同时调用时只有最后一个生效
public final R select(P... properties)
QueryFunc在分组查询下,返回所有分组列而不是所有列
selectAll、select、applySelect 三个当同时调用时只有最后一个生效
public R applySelect(String select)
QueryFuncselectAll、select、applySelect 三个当同时调用时只有最后一个生效
!! 会有 sql 注入风险 !!
例1: applySelect("count(*)")
例2: applySelect("date_format(dateColumn,'%Y-%m-%d') as date")
例3: applySelect("max(columnA) , min(columnB)")
applySelect 在接口中 QueryFunc<R,T,P>protected void lockGroupBy()
protected void lockOrderBy()
public void query(RowCallbackHandler rch) throws SQLException
QueryFuncpublic <V> V query(ResultSetExtractor<V> rse) throws SQLException
QueryFuncpublic <V> List<V> query(RowMapper<V> rowMapper) throws SQLException
QueryFuncpublic List<T> queryForList() throws SQLException
QueryFuncelementType参数指定的类型对象。queryForList 在接口中 QueryFunc<R,T,P>SQLExceptionpublic List<Map<String,Object>> queryForMapList() throws SQLException
queryForMapList 在接口中 QueryFunc<R,T,P>SQLExceptionpublic Map<String,Object> queryForMap() throws SQLException
QueryFuncqueryForMap 在接口中 QueryFunc<R,T,P>SQLExceptionprotected abstract TableReader<T> getTableReader()
public T queryForObject() throws SQLException
QueryFuncqueryForObject 在接口中 QueryFunc<R,T,P>SQLExceptionpublic int queryForCount()
throws SQLException
QueryFuncqueryForCount 在接口中 QueryFunc<R,T,P>SQLExceptionpublic long queryForLargeCount()
throws SQLException
QueryFuncqueryForLargeCount 在接口中 QueryFunc<R,T,P>SQLExceptionprotected BoundSql buildBoundSql(SqlDialect dialect)
buildBoundSql 在类中 BasicLambda<R,T,P>Copyright © 2021–2022. All rights reserved.