类 SqlPagingQueryUtils
- java.lang.Object
- org.springframework.batch.item.database.support.SqlPagingQueryUtils
public class SqlPagingQueryUtils extends java.lang.Object
Utility class that generates the actual SQL statements used by query providers.- 从以下版本开始:
- 2.0
- 作者:
- Thomas Risberg, Dave Syer, Michael Minella
构造器概要
构造器 构造器 说明 SqlPagingQueryUtils()
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 static java.lang.String
buildSortClause(java.util.Map<java.lang.String,Order> sortKeys)
Generates ORDER BY attributes based on the sort keys.static java.lang.String
buildSortClause(AbstractSqlPagingQueryProvider provider)
Generates ORDER BY attributes based on the sort keys.static void
buildSortConditions(AbstractSqlPagingQueryProvider provider, java.lang.StringBuilder sql)
Appends the where conditions required to query for the subsequent pages.static java.lang.String
generateGroupedTopSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String topClause)
Generate SQL query string using a TOP clausestatic java.lang.String
generateLimitGroupedSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String limitClause)
Generate SQL query string using a LIMIT clausestatic java.lang.String
generateLimitJumpToQuery(AbstractSqlPagingQueryProvider provider, java.lang.String limitClause)
Generate SQL query string using a LIMIT clausestatic java.lang.String
generateLimitSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String limitClause)
Generate SQL query string using a LIMIT clausestatic java.lang.String
generateRowNumSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String rowNumClause)
Generate SQL query string using a ROW_NUM conditionstatic java.lang.String
generateRowNumSqlQuery(AbstractSqlPagingQueryProvider provider, java.lang.String selectClause, boolean remainingPageQuery, java.lang.String rowNumClause)
Generate SQL query string using a ROW_NUM conditionstatic java.lang.String
generateRowNumSqlQueryWithNesting(AbstractSqlPagingQueryProvider provider, java.lang.String selectClause, boolean remainingPageQuery, java.lang.String rowNumClause)
static java.lang.String
generateRowNumSqlQueryWithNesting(AbstractSqlPagingQueryProvider provider, java.lang.String innerSelectClause, java.lang.String outerSelectClause, boolean remainingPageQuery, java.lang.String rowNumClause)
static java.lang.String
generateTopJumpToQuery(AbstractSqlPagingQueryProvider provider, java.lang.String topClause)
Generate SQL query string using a TOP clausestatic java.lang.String
generateTopSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String topClause)
Generate SQL query string using a TOP clause
构造器详细资料
SqlPagingQueryUtils
public SqlPagingQueryUtils()
方法详细资料
generateLimitSqlQuery
public static java.lang.String generateLimitSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String limitClause)
Generate SQL query string using a LIMIT clause- 参数:
provider
-AbstractSqlPagingQueryProvider
providing the implementation specificsremainingPageQuery
- is this query for the remaining pages (true) as opposed to the first page (false)limitClause
- the implementation specific limit clause to be used- 返回:
- the generated query
generateLimitGroupedSqlQuery
public static java.lang.String generateLimitGroupedSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String limitClause)
Generate SQL query string using a LIMIT clause- 参数:
provider
-AbstractSqlPagingQueryProvider
providing the implementation specificsremainingPageQuery
- is this query for the remaining pages (true) as opposed to the first page (false)limitClause
- the implementation specific limit clause to be used- 返回:
- the generated query
generateTopSqlQuery
public static java.lang.String generateTopSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String topClause)
Generate SQL query string using a TOP clause- 参数:
provider
-AbstractSqlPagingQueryProvider
providing the implementation specificsremainingPageQuery
- is this query for the remaining pages (true) as opposed to the first page (false)topClause
- the implementation specific top clause to be used- 返回:
- the generated query
generateGroupedTopSqlQuery
public static java.lang.String generateGroupedTopSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String topClause)
Generate SQL query string using a TOP clause- 参数:
provider
-AbstractSqlPagingQueryProvider
providing the implementation specificsremainingPageQuery
- is this query for the remaining pages (true) as opposed to the first page (false)topClause
- the implementation specific top clause to be used- 返回:
- the generated query
generateRowNumSqlQuery
public static java.lang.String generateRowNumSqlQuery(AbstractSqlPagingQueryProvider provider, boolean remainingPageQuery, java.lang.String rowNumClause)
Generate SQL query string using a ROW_NUM condition- 参数:
provider
-AbstractSqlPagingQueryProvider
providing the implementation specificsremainingPageQuery
- is this query for the remaining pages (true) as opposed to the first page (false)rowNumClause
- the implementation specific row num clause to be used- 返回:
- the generated query
generateRowNumSqlQuery
public static java.lang.String generateRowNumSqlQuery(AbstractSqlPagingQueryProvider provider, java.lang.String selectClause, boolean remainingPageQuery, java.lang.String rowNumClause)
Generate SQL query string using a ROW_NUM condition- 参数:
provider
-AbstractSqlPagingQueryProvider
providing the implementation specificsselectClause
-String
containing the select portion of the query.remainingPageQuery
- is this query for the remaining pages (true) as opposed to the first page (false)rowNumClause
- the implementation specific row num clause to be used- 返回:
- the generated query
generateRowNumSqlQueryWithNesting
public static java.lang.String generateRowNumSqlQueryWithNesting(AbstractSqlPagingQueryProvider provider, java.lang.String selectClause, boolean remainingPageQuery, java.lang.String rowNumClause)
generateRowNumSqlQueryWithNesting
public static java.lang.String generateRowNumSqlQueryWithNesting(AbstractSqlPagingQueryProvider provider, java.lang.String innerSelectClause, java.lang.String outerSelectClause, boolean remainingPageQuery, java.lang.String rowNumClause)
generateLimitJumpToQuery
public static java.lang.String generateLimitJumpToQuery(AbstractSqlPagingQueryProvider provider, java.lang.String limitClause)
Generate SQL query string using a LIMIT clause- 参数:
provider
-AbstractSqlPagingQueryProvider
providing the implementation specificslimitClause
- the implementation specific top clause to be used- 返回:
- the generated query
generateTopJumpToQuery
public static java.lang.String generateTopJumpToQuery(AbstractSqlPagingQueryProvider provider, java.lang.String topClause)
Generate SQL query string using a TOP clause- 参数:
provider
-AbstractSqlPagingQueryProvider
providing the implementation specificstopClause
- the implementation specific top clause to be used- 返回:
- the generated query
buildSortClause
public static java.lang.String buildSortClause(AbstractSqlPagingQueryProvider provider)
Generates ORDER BY attributes based on the sort keys.- 参数:
provider
- theAbstractSqlPagingQueryProvider
to be used for used for pagination.- 返回:
- a String that can be appended to an ORDER BY clause.
buildSortClause
public static java.lang.String buildSortClause(java.util.Map<java.lang.String,Order> sortKeys)
Generates ORDER BY attributes based on the sort keys.- 参数:
sortKeys
-Map
where the key is the name of the column to be sorted and the value contains theOrder
.- 返回:
- a String that can be appended to an ORDER BY clause.
buildSortConditions
public static void buildSortConditions(AbstractSqlPagingQueryProvider provider, java.lang.StringBuilder sql)
Appends the where conditions required to query for the subsequent pages.- 参数:
provider
- theAbstractSqlPagingQueryProvider
to be used for pagination.sql
-StringBuilder
containing the sql to be used for the query.