Package org.hibernate.dialect.pagination
Class FetchLimitHandler
java.lang.Object
org.hibernate.dialect.pagination.AbstractLimitHandler
org.hibernate.dialect.pagination.AbstractNoOffsetLimitHandler
org.hibernate.dialect.pagination.FetchLimitHandler
- All Implemented Interfaces:
LimitHandler
A
LimitHandler for databases which support the ANSI
SQL standard syntax FETCH FIRST m ROWS ONLY but not
OFFSET n ROWS.-
Field Summary
FieldsFields inherited from class org.hibernate.dialect.pagination.AbstractLimitHandler
NO_LIMIT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanDoes the offset/limit clause come at the start of theSELECTstatement, or at the end of the query?protected Stringprotected StringThe SQL fragment to insert, with a ? placeholder for the actual numerical limit.protected StringlimitClause(int jdbcParameterCount, ParameterMarkerStrategy parameterMarkerStrategy) booleanReturns whetherLimitHandler.processSql(String, int, ParameterMarkerStrategy, QueryOptions)mutates the state of this limit handler and needs to be called for certain other methods to work correctly.Methods inherited from class org.hibernate.dialect.pagination.AbstractNoOffsetLimitHandler
processSql, processSql, supportsLimit, supportsLimitOffset, supportsVariableLimitMethods inherited from class org.hibernate.dialect.pagination.AbstractLimitHandler
bindLimitParameters, bindLimitParametersAtEndOfQuery, bindLimitParametersAtStartOfQuery, bindLimitParametersInReverseOrder, convertToFirstRowValue, forceLimitUsage, getFirstRow, getForUpdatePattern, getMaxOrLimit, hasFirstRow, hasMaxRows, insertAfterDistinct, insertAfterSelect, insertAtEnd, insertBeforeForUpdate, setMaxRows, supportsOffset, useMaxForLimitMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.hibernate.dialect.pagination.LimitHandler
getParameterPositionStart, processSql
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
FetchLimitHandler
public FetchLimitHandler(boolean variableLimit)
-
-
Method Details
-
limitClause
Description copied from class:AbstractNoOffsetLimitHandlerThe SQL fragment to insert, with a ? placeholder for the actual numerical limit.- Specified by:
limitClausein classAbstractNoOffsetLimitHandler
-
limitClause
protected String limitClause(int jdbcParameterCount, ParameterMarkerStrategy parameterMarkerStrategy) - Overrides:
limitClausein classAbstractNoOffsetLimitHandler
-
insert
- Specified by:
insertin classAbstractNoOffsetLimitHandler
-
bindLimitParametersFirst
public boolean bindLimitParametersFirst()Description copied from class:AbstractLimitHandlerDoes the offset/limit clause come at the start of theSELECTstatement, or at the end of the query?- Specified by:
bindLimitParametersFirstin classAbstractNoOffsetLimitHandler- Returns:
- true if limit parameters come before other parameters
-
processSqlMutatesState
public boolean processSqlMutatesState()Description copied from interface:LimitHandlerReturns whetherLimitHandler.processSql(String, int, ParameterMarkerStrategy, QueryOptions)mutates the state of this limit handler and needs to be called for certain other methods to work correctly.
-