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

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

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

Query.scroll介绍

[英]Return the query results as ScrollableResults. The scrollability of the returned results depends upon JDBC driver support for scrollable ResultSets.

You should call ScrollableResults#close() after processing the ScrollableResults so that the underlying resources are deallocated right away.
[中]将查询结果作为可滚动结果返回。返回结果的可滚动性取决于JDBC驱动程序对可滚动结果集的支持。
在处理ScrollableResults之后,应该调用ScrollableResults#close(),以便立即释放底层资源。

代码示例

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

  1. public SyntaxChecker checkScroll() {
  2. Session s = openSession();
  3. s.beginTransaction();
  4. Query query = s.createQuery( hql );
  5. preparer.prepare( query );
  6. query.scroll();
  7. s.getTransaction().commit();
  8. s.close();
  9. return this;
  10. }

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

  1. /**
  2. * Get a cursor over all of the results, with the forward-only flag set.
  3. *
  4. * @param fetchSize the fetch size to use retrieving the results
  5. * @param parameterValues the parameter values to use (or null if none).
  6. *
  7. * @return a forward-only {@link ScrollableResults}
  8. */
  9. public ScrollableResults getForwardOnlyCursor(int fetchSize, Map<String, Object> parameterValues) {
  10. Query query = createQuery();
  11. if (parameterValues != null) {
  12. query.setProperties(parameterValues);
  13. }
  14. return query.setFetchSize(fetchSize).scroll(ScrollMode.FORWARD_ONLY);
  15. }

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

  1. Query query = s.createQuery("from DataPoint dp order by dp.x asc");
  2. s.setDefaultReadOnly( true );
  3. ScrollableResults sr = query.scroll(ScrollMode.FORWARD_ONLY);
  4. s.setDefaultReadOnly( false );
  5. while ( sr.next() ) {

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

  1. getSelectNewQuery( session ).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).scroll();
  2. fail("'select new' together with a resulttransformer should result in error!");

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

  1. s.setDefaultReadOnly( true );
  2. assertTrue( s.isDefaultReadOnly() );
  3. ScrollableResults sr = query.scroll(ScrollMode.FORWARD_ONLY);
  4. assertFalse( query.isReadOnly() );
  5. DataPoint dpLast = ( DataPoint ) s.get( DataPoint.class, dp.getId() );

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

  1. s.setDefaultReadOnly( false );
  2. assertFalse( s.isDefaultReadOnly() );
  3. ScrollableResults sr = query.scroll(ScrollMode.FORWARD_ONLY);
  4. assertFalse( s.isDefaultReadOnly() );
  5. assertTrue( query.isReadOnly() );

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

  1. .scroll(ScrollMode.FORWARD_ONLY);

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

  1. Query query = s.createQuery("select f, f.integer from Foo f");
  2. assertTrue( query.getReturnTypes().length==2 );
  3. ScrollableResults iter = query.scroll();
  4. assertTrue( iter.next() );
  5. assertTrue( iter.scroll(1) );
  6. query = s.createQuery("select f, f.integer from Foo f");
  7. assertTrue( query.getReturnTypes().length==2 );
  8. iter = query.scroll();
  9. assertTrue( iter.next() );
  10. assertTrue( iter.scroll(1) );

代码示例来源:origin: stackoverflow.com

  1. Query query = session.createQuery(query);
  2. query.setReadOnly(true);
  3. // MIN_VALUE gives hint to JDBC driver to stream results
  4. query.setFetchSize(Integer.MIN_VALUE);
  5. ScrollableResults results = query.scroll(ScrollMode.FORWARD_ONLY);
  6. // iterate over results
  7. while (results.next()) {
  8. Object row = results.get();
  9. // process row then release reference
  10. // you may need to evict() as well
  11. }
  12. results.close();

代码示例来源:origin: com.github.cafdataprocessing/corepolicy-hibernate

  1. @Override
  2. public ScrollableResults scroll() {
  3. return query.scroll();
  4. }

代码示例来源:origin: com.revolsys.open/com.revolsys.open.orm.hibernate

  1. /**
  2. * Construct a new HibernateQueryPager.
  3. *
  4. * @param query The Hibernate query.
  5. */
  6. public HibernateQueryPager(final Query query) {
  7. this.query = query;
  8. final ScrollableResults scrollableResults = query.scroll();
  9. scrollableResults.last();
  10. this.numResults = scrollableResults.getRowNumber() + 1;
  11. }

代码示例来源:origin: badqiu/rapid-framework

  1. private static int queryTatalCountByScrollableResults(Query query) {
  2. ScrollableResults scrollableResults = query.scroll();
  3. scrollableResults.last();
  4. return scrollableResults.getRowNumber() + 1;
  5. }

代码示例来源:origin: com.querydsl/querydsl-jpa

  1. @Override
  2. public CloseableIterator<T> iterate() {
  3. try {
  4. Query query = createQuery();
  5. ScrollableResults results = query.scroll(ScrollMode.FORWARD_ONLY);
  6. return new ScrollableResultsIterator<T>(results);
  7. } finally {
  8. reset();
  9. }
  10. }

代码示例来源:origin: stackoverflow.com

  1. Query query = session.createQuery(query);
  2. query.setReadOnly(true);
  3. setFetchSize(Integer.MIN_VALUE); //MUST use Integer.MIN_VALUE, other value=fetch all
  4. ScrollableResults results = query.scroll(ScrollMode.FORWARD_ONLY);
  5. // iterate over results
  6. while (results.next()) {
  7. Object row = results.get();
  8. }
  9. results.close();

代码示例来源:origin: stackoverflow.com

  1. Query query = session.createQuery(query);
  2. query.setReadOnly(true);
  3. // MIN_VALUE gives hint to JDBC driver to stream results
  4. query.setFetchSize(Integer.MIN_VALUE);
  5. ScrollableResults results = query.scroll(ScrollMode.FORWARD_ONLY);
  6. // iterate over results
  7. while (results.next()) {
  8. Object row = results.get();
  9. // process row then release reference
  10. // you may need to evict() as well
  11. }
  12. results.close();

代码示例来源:origin: stackoverflow.com

  1. Query query = session.createQuery(query);
  2. query.setReadOnly(true);
  3. query.setFetchSize(Integer.MIN_VALUE);
  4. ScrollableResults results = query.scroll(ScrollMode.FORWARD_ONLY);
  5. // iterate over results
  6. while (results.next()) {
  7. Object row = results.get();
  8. // process row then release reference
  9. // you may need to evict() as well
  10. }
  11. results.close();

代码示例来源:origin: stackoverflow.com

  1. Query query = session.createQuery(query);
  2. query.setReadOnly(true);
  3. query.setFetchSize(50);
  4. ScrollableResults results = query.scroll(ScrollMode.FORWARD_ONLY);
  5. // iterate over results
  6. while (results.next()) {
  7. Object row = results.get();
  8. // process row then release reference
  9. // you may need to flush() as well
  10. }
  11. results.close();

代码示例来源:origin: com.mysema.querydsl/querydsl-jpa

  1. @Test
  2. public void Scroll() throws IOException{
  3. CloseableIterator<Cat> cats = new ScrollableResultsIterator<Cat>(query().from(cat)
  4. .createQuery(cat).scroll());
  5. assertTrue(cats.hasNext());
  6. while (cats.hasNext()) {
  7. assertNotNull(cats.next());
  8. }
  9. cats.close();
  10. }

代码示例来源:origin: com.querydsl/querydsl-jpa

  1. @Test
  2. public void scroll() throws IOException {
  3. CloseableIterator<Cat> cats = new ScrollableResultsIterator<Cat>(query().from(cat)
  4. .select(cat).createQuery().scroll());
  5. assertTrue(cats.hasNext());
  6. while (cats.hasNext()) {
  7. assertNotNull(cats.next());
  8. }
  9. cats.close();
  10. }

代码示例来源:origin: com.querydsl/querydsl-jpa

  1. @Test
  2. public void scrollTuple() throws IOException {
  3. CloseableIterator<Tuple> rows = new ScrollableResultsIterator<Tuple>(query()
  4. .from(cat)
  5. .select(cat.name, cat.birthdate).createQuery().scroll());
  6. assertTrue(rows.hasNext());
  7. while (rows.hasNext()) {
  8. Tuple row = rows.next();
  9. assertEquals(2, row.size());
  10. }
  11. rows.close();
  12. }

相关文章