Example usage for org.hibernate.query Query setFetchSize

List of usage examples for org.hibernate.query Query setFetchSize

Introduction

In this page you can find the example usage for org.hibernate.query Query setFetchSize.

Prototype

@Override
    Query<R> setFetchSize(int fetchSize);

Source Link

Usage

From source file:org.springframework.batch.item.database.Hibernate5ItemReaderHelper.java

License:Apache License

/**
 * Get a cursor over all of the results, with the forward-only flag set.
 *
 * @param fetchSize the fetch size to use retrieving the results
 * @param parameterValues the parameter values to use (or null if none).
 *
 * @return a forward-only {@link ScrollableResults}
 *//*from  w w  w . ja v  a2  s  . co  m*/
public ScrollableResults getForwardOnlyCursor(int fetchSize, Map<String, Object> parameterValues) {
    Query query = createQuery();
    if (parameterValues != null) {
        query.setProperties(parameterValues);
    }
    return query.setFetchSize(fetchSize).scroll(ScrollMode.FORWARD_ONLY);
}

From source file:org.springframework.batch.item.database.Hibernate5ItemReaderHelper.java

License:Apache License

/**
 * Read a page of data, clearing the existing session (if necessary) first,
 * and creating a new session before executing the query.
 *
 * @param page the page to read (starting at 0)
 * @param pageSize the size of the page or maximum number of items to read
 * @param fetchSize the fetch size to use
 * @param parameterValues the parameter values to use (if any, otherwise
 * null)// w w  w  .j  a va 2 s  .  c  om
 * @return a collection of items
 */
public Collection<? extends T> readPage(int page, int pageSize, int fetchSize,
        Map<String, Object> parameterValues) {

    clear();

    Query query = createQuery();
    if (parameterValues != null) {
        query.setProperties(parameterValues);
    }
    @SuppressWarnings("unchecked")
    List<T> result = query.setFetchSize(fetchSize).setFirstResult(page * pageSize).setMaxResults(pageSize)
            .list();
    return result;

}