org.hibernate.Query.setFirstResult()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(9.6k)|赞(0)|评价(0)|浏览(347)

本文整理了Java中org.hibernate.Query.setFirstResult方法的一些代码示例,展示了Query.setFirstResult的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Query.setFirstResult方法的具体详情如下:
包路径:org.hibernate.Query
类名称:Query
方法名:setFirstResult

Query.setFirstResult介绍

[英]Set the first row to retrieve. If not set, rows will be retrieved beginnning from row 0.
[中]设置要检索的第一行。如果未设置,将从第0行开始检索行。

代码示例

代码示例来源:origin: spring-projects/spring-batch

  1. /**
  2. * Read a page of data, clearing the existing session (if necessary) first,
  3. * and creating a new session before executing the query.
  4. *
  5. * @param page the page to read (starting at 0)
  6. * @param pageSize the size of the page or maximum number of items to read
  7. * @param fetchSize the fetch size to use
  8. * @param parameterValues the parameter values to use (if any, otherwise
  9. * null)
  10. * @return a collection of items
  11. */
  12. public Collection<? extends T> readPage(int page, int pageSize, int fetchSize, Map<String, Object> parameterValues) {
  13. clear();
  14. Query query = createQuery();
  15. if (parameterValues != null) {
  16. query.setProperties(parameterValues);
  17. }
  18. @SuppressWarnings("unchecked")
  19. List<T> result = query.setFetchSize(fetchSize).setFirstResult(page * pageSize).setMaxResults(pageSize).list();
  20. return result;
  21. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void testPSCache() throws Exception {
  3. Session s = openSession();
  4. Transaction txn = s.beginTransaction();
  5. for ( int i=0; i<10; i++ ) s.save( new Foo() );
  6. Query q = s.createQuery("from Foo");
  7. q.setMaxResults(2);
  8. q.setFirstResult(5);
  9. assertTrue( q.list().size()==2 );
  10. q = s.createQuery("from Foo");
  11. assertTrue( q.list().size()==10 );
  12. assertTrue( q.list().size()==10 );
  13. q.setMaxResults(3);
  14. q.setFirstResult(3);
  15. assertTrue( q.list().size()==3 );
  16. q = s.createQuery("from Foo");
  17. assertTrue( q.list().size()==10 );
  18. txn.commit();
  19. s.close();
  20. s = openSession();
  21. txn = s.beginTransaction();
  22. q = s.createQuery("from Foo");
  23. assertTrue( q.list().size()==10 );
  24. q.setMaxResults(5);
  25. assertTrue( q.list().size()==5 );
  26. doDelete( s, "from Foo" );
  27. txn.commit();
  28. s.close();
  29. }

代码示例来源:origin: gocd/gocd

  1. public Modifications getModificationsFor(final MaterialInstance materialInstance, final Pagination pagination) {
  2. String key = materialModificationsWithPaginationKey(materialInstance);
  3. String subKey = materialModificationsWithPaginationSubKey(pagination);
  4. Modifications modifications = (Modifications) goCache.get(key, subKey);
  5. if (modifications == null) {
  6. synchronized (key) {
  7. modifications = (Modifications) goCache.get(key, subKey);
  8. if (modifications == null) {
  9. List<Modification> modificationsList = (List<Modification>) getHibernateTemplate().execute((HibernateCallback) session -> {
  10. Query q = session.createQuery("FROM Modification WHERE materialId = ? ORDER BY id DESC");
  11. q.setFirstResult(pagination.getOffset());
  12. q.setMaxResults(pagination.getPageSize());
  13. q.setLong(0, materialInstance.getId());
  14. return q.list();
  15. });
  16. if (!modificationsList.isEmpty()) {
  17. modifications = new Modifications(modificationsList);
  18. goCache.put(key, subKey, modifications);
  19. }
  20. }
  21. }
  22. }
  23. return modifications;
  24. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void testHql() {
  3. Session session = openSession();
  4. session.beginTransaction();
  5. Query qry = session.createQuery( "from Door" );
  6. qry.getLockOptions().setLockMode( LockMode.PESSIMISTIC_WRITE );
  7. qry.setFirstResult( 2 );
  8. qry.setMaxResults( 2 );
  9. @SuppressWarnings("unchecked") List<Door> results = qry.list();
  10. assertEquals( 2, results.size() );
  11. for ( Door door : results ) {
  12. assertEquals( LockMode.PESSIMISTIC_WRITE, session.getCurrentLockMode( door ) );
  13. }
  14. session.getTransaction().commit();
  15. session.close();
  16. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Test
  2. public void testFirstResult() {
  3. doInHibernate(
  4. this::sessionFactory,
  5. session -> {
  6. Query query = session.createQuery( "from Employee" );
  7. // not initialized yet
  8. assertNull( query.getHibernateFirstResult() );
  9. // the following is special case; when initialized to -1, getHibernateFirstResult returns 0
  10. assertEquals( Integer.valueOf( 0 ), query.setHibernateFirstResult( -1 ).getHibernateFirstResult() );
  11. assertEquals( Integer.valueOf( 0 ), query.setHibernateFirstResult( 0 ).getHibernateFirstResult() );
  12. assertEquals( Integer.valueOf( 1 ), query.setHibernateFirstResult( 1 ).getHibernateFirstResult() );
  13. assertEquals( Integer.valueOf( 10 ), query.setFirstResult( 10 ).getHibernateFirstResult() );
  14. }
  15. );
  16. }

代码示例来源:origin: hibernate/hibernate-orm

  1. q.setString(1, "SIMPLE 1");
  2. q.setString( 0, "Simple 1" );
  3. q.setFirstResult(0);
  4. assertTrue( q.iterate().hasNext() );
  5. q = s.createQuery("from Simple s where s.name = :foo and upper(s.name) = :bar or s.count=:count or s.count=:count + 1");
  6. q.setString( "foo", "Simple 1" );
  7. q.setInteger("count", 69);
  8. q.setFirstResult(0);
  9. assertTrue( q.iterate().hasNext() );
  10. q = s.createQuery("select s.id from Simple s");
  11. q.setFirstResult(1);
  12. q.setMaxResults( 2 );
  13. iter = q.iterate();

代码示例来源:origin: hibernate/hibernate-orm

  1. q.setString(1, "SIMPLE 1");
  2. q.setString(0, "Simple 1");
  3. q.setFirstResult(0);
  4. assertTrue( q.iterate().hasNext() );
  5. q = s.createQuery("from Simple s where s.name = :foo and upper(s.name) = :bar or s.count=:count or s.count=:count + 1");
  6. q.setString("foo", "Simple 1");
  7. q.setInteger("count", 69);
  8. q.setFirstResult(0);
  9. assertTrue( q.iterate().hasNext() );
  10. q = s.createQuery("select s.id from Simple s");
  11. q.setFirstResult(1);
  12. q.setMaxResults(2);
  13. iter = q.iterate();

代码示例来源:origin: bill1012/AdminEAP

  1. @SuppressWarnings("unchecked")
  2. public <T> List<T> find(String hql, Map<String, Object> params, int page, int rows) {
  3. Query query = this.getCurrentSession().createQuery(hql);
  4. if (params != null && !params.isEmpty()) {
  5. for (String key : params.keySet()) {
  6. query.setParameter(key, params.get(key));
  7. }
  8. }
  9. return query.setFirstResult((page - 1) * rows).setMaxResults(rows).list();
  10. }

代码示例来源:origin: bill1012/AdminEAP

  1. @SuppressWarnings("unchecked")
  2. public <T> List<T> find(String hql, int page, int rows) {
  3. Query query = this.getCurrentSession().createQuery(hql);
  4. return query.setFirstResult((page - 1) * rows).setMaxResults(rows).list();
  5. }

代码示例来源:origin: openmrs/openmrs-core

  1. /**
  2. * @see UserDAO#getUsers(String, List, boolean, Integer, Integer)
  3. */
  4. @Override
  5. @SuppressWarnings("unchecked")
  6. public List<User> getUsers(String name, List<Role> roles, boolean includeRetired, Integer start, Integer length) {
  7. String hqlSelectStart = "select distinct user from User as user inner join user.person.names as name ";
  8. Query query = createUserSearchQuery(name, roles, includeRetired, hqlSelectStart);
  9. if (start != null) {
  10. query.setFirstResult(start);
  11. }
  12. if (length != null && length > 0) {
  13. query.setMaxResults(length);
  14. }
  15. List<User> returnList = query.list();
  16. if (!CollectionUtils.isEmpty(returnList)) {
  17. returnList.sort(new UserByNameComparator());
  18. }
  19. return returnList;
  20. }

代码示例来源:origin: my2iu/Jinq

  1. if (offset > 0) q.setFirstResult(offset);
  2. long pageSize = Long.MAX_VALUE;
  3. if (hints.automaticResultsPagingSize > 0)

代码示例来源:origin: bill1012/AdminEAP

  1. @Override
  2. public List findMapBySql(String sql, int firstResult, int maxResult, Object[] params, Type[] types, Class clazz) {
  3. if (clazz != null)
  4. return this.getCurrentSession().createSQLQuery(sql).setParameters(params, types).setFirstResult(firstResult)
  5. .setMaxResults(maxResult).setResultTransformer(Transformers.aliasToBean(clazz)).list();
  6. else
  7. return this.getCurrentSession().createSQLQuery(sql).setParameters(params, types).setFirstResult(firstResult)
  8. .setMaxResults(maxResult).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list();
  9. }

代码示例来源:origin: Impetus/Kundera

  1. /**
  2. * Find.
  3. *
  4. * @param query
  5. * the native fquery
  6. * @param parameterMap
  7. * the parameter map
  8. * @param maxResult
  9. * @param firstResult
  10. * @return the list
  11. */
  12. public List findByQuery(String query, Map<Parameter, Object> parameterMap, int firstResult, int maxResult)
  13. {
  14. s = getStatelessSession();
  15. Query q = s.createQuery(query);
  16. q.setFirstResult(firstResult);
  17. q.setMaxResults(maxResult);
  18. setParameters(parameterMap, q);
  19. return q.list();
  20. }

代码示例来源:origin: yahoo/elide

  1. @Override
  2. public Query setFirstResult(int num) {
  3. this.query = query.setFirstResult(num);
  4. return this;
  5. }

代码示例来源:origin: yahoo/elide

  1. @Override
  2. public Query setFirstResult(int num) {
  3. this.query = query.setFirstResult(num);
  4. return this;
  5. }

代码示例来源:origin: Impetus/Kundera

  1. /**
  2. * Find.
  3. *
  4. * @param query
  5. * the native fquery
  6. * @param parameterMap
  7. * the parameter map
  8. * @param maxResult
  9. * @param firstResult
  10. * @return the list
  11. */
  12. public int onExecuteUpdate(String query, Map<Parameter, Object> parameterMap, int firstResult, int maxResult)
  13. {
  14. s = getStatelessSession();
  15. Query q = s.createQuery(query);
  16. q.setFirstResult(firstResult);
  17. q.setMaxResults(maxResult);
  18. setParameters(parameterMap, q);
  19. Transaction tx = onBegin();
  20. int i = q.executeUpdate();
  21. onCommit(tx);
  22. // tx.commit();
  23. return i;
  24. }

代码示例来源:origin: sakaiproject/sakai

  1. private List<Long> itemIdsNeedingHashBackfill(Map<String, String> hqlQueries, int pageSize, int pageStart, Session session) {
  2. return session
  3. .createQuery(hqlQueries.get(ALL_HASH_BACKFILLABLE_ITEM_IDS_HQL))
  4. .setFirstResult(pageStart)
  5. .setMaxResults(pageSize)
  6. .list();
  7. }

代码示例来源:origin: debop/hibernate-redis

  1. public static Query setPaging(Query query, int firstResult, int maxResults) {
  2. if (firstResult >= 0)
  3. query.setFirstResult(firstResult);
  4. if (maxResults > 0)
  5. query.setMaxResults(maxResults);
  6. return query;
  7. }
  8. }

代码示例来源:origin: denimgroup/threadfix

  1. @Override
  2. @SuppressWarnings("unchecked")
  3. public List<ExceptionLog> retrievePage(int page, int numberToShow) {
  4. return sessionFactory.getCurrentSession()
  5. .createQuery("from ExceptionLog log order by log.time desc")
  6. .setMaxResults(numberToShow)
  7. .setFirstResult((page - 1) * numberToShow)
  8. .list();
  9. }

代码示例来源:origin: xiaolongzuo/niubi-job

  1. @SuppressWarnings("unchecked")
  2. private <T extends AbstractEntity> List<T> getDataList(List<Object> valueList, StringBuffer sqlBuffer, Pager<T> pager) {
  3. String querySql = sqlBuffer.toString() + " order by createDate desc";
  4. Query query = getHibernateSession().createQuery(querySql);
  5. setParameters(query, valueList);
  6. query.setFirstResult(pager.getFirstIndex());
  7. query.setMaxResults(pager.getPageSize());
  8. return query.list();
  9. }

相关文章