java - HQL 选择结果范围

标签 java hibernate jakarta-ee hql

从 hibernate 中检索结果子集的正确/有效方法是什么?

假设products是一个包含3000条记录的表。

Session session = SessionFactorys.getSessionFactory().openSession();
Query query = session.createQuery("from products p");
List result = query.list().subList(30, 40);     
session.disconnect();

上面的代码似乎不是很有效,有没有更好的方法,我正在尝试寻找类似的方法。

Query query = session.createQuery("from products p range(30,40)");

最佳答案

使用 query.setFirstResult()query.setMaxResults() 但请注意,这当然取决于结果集的顺序。

Query query = session.createQuery("from products p");
query.setFirstResult(30);
query.setMaxResults(10);
List result = query.list();

关于java - HQL 选择结果范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8463747/

相关文章:

JavaFX - 无法取消计时器

java - Guice 绑定(bind) API 示例

java - 具有接口(interface)属性的 JPA 实体,这可能吗?

java - 如何将无状态bean中的entitymanager注入(inject)传递给dao而不使用setter方法

java - 文件不再可读

java - JPQL 多对多选择

java - 如何在 PDFBOX 中用 URL 替换字符串?

java - 调车场算法的问题

java - 使用hibernate创建用户表名

java - java的用户注册框架