Package org.hibernate.dialect.pagination
Class OffsetFetchLimitHandler
- java.lang.Object
-
- org.hibernate.dialect.pagination.AbstractLimitHandler
-
- org.hibernate.dialect.pagination.OffsetFetchLimitHandler
-
- All Implemented Interfaces:
LimitHandler
- Direct Known Subclasses:
DB2LimitHandler
,DerbyLimitHandler
,SQLServer2012LimitHandler
public class OffsetFetchLimitHandler extends AbstractLimitHandler
ALimitHandler
for databases which support the ANSI SQL standard syntaxFETCH FIRST m ROWS ONLY
andOFFSET n ROWS FETCH NEXT m ROWS ONLY
.
-
-
Field Summary
Fields Modifier and Type Field Description static OffsetFetchLimitHandler
INSTANCE
-
Fields inherited from class org.hibernate.dialect.pagination.AbstractLimitHandler
NO_LIMIT
-
-
Constructor Summary
Constructors Constructor Description OffsetFetchLimitHandler(boolean variableLimit)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
processSql(String sql, Limit limit)
protected boolean
renderOffsetRowsKeyword()
boolean
supportsLimit()
Does this handler support limiting query results?boolean
supportsOffset()
Does this handler support offsetting query results without also specifying a limit?boolean
supportsVariableLimit()
Does this handler support bind variables (JDBC prepared statement parameters) for its limit/offset?-
Methods inherited from class org.hibernate.dialect.pagination.AbstractLimitHandler
bindLimitParameters, bindLimitParametersAtEndOfQuery, bindLimitParametersAtStartOfQuery, bindLimitParametersFirst, bindLimitParametersInReverseOrder, convertToFirstRowValue, forceLimitUsage, getFirstRow, getForUpdatePattern, getMaxOrLimit, hasFirstRow, hasMaxRows, insertAfterDistinct, insertAfterSelect, insertAtEnd, insertBeforeForUpdate, setMaxRows, supportsLimitOffset, useMaxForLimit
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.dialect.pagination.LimitHandler
processSql
-
-
-
-
Field Detail
-
INSTANCE
public static final OffsetFetchLimitHandler INSTANCE
-
-
Method Detail
-
processSql
public String processSql(String sql, Limit limit)
- Specified by:
processSql
in interfaceLimitHandler
- Overrides:
processSql
in classAbstractLimitHandler
-
supportsLimit
public final boolean supportsLimit()
Description copied from interface:LimitHandler
Does this handler support limiting query results?- Specified by:
supportsLimit
in interfaceLimitHandler
- Overrides:
supportsLimit
in classAbstractLimitHandler
- Returns:
- True if this handler supports limit alone.
-
supportsOffset
public boolean supportsOffset()
Description copied from interface:LimitHandler
Does this handler support offsetting query results without also specifying a limit?- Specified by:
supportsOffset
in interfaceLimitHandler
- Overrides:
supportsOffset
in classAbstractLimitHandler
- Returns:
- True if this handler supports offset alone.
-
supportsVariableLimit
public final boolean supportsVariableLimit()
Description copied from class:AbstractLimitHandler
Does this handler support bind variables (JDBC prepared statement parameters) for its limit/offset?- Overrides:
supportsVariableLimit
in classAbstractLimitHandler
- Returns:
- true if bind variables can be used
-
renderOffsetRowsKeyword
protected boolean renderOffsetRowsKeyword()
-
-