Java 使用hibernate使用有序数据分页

Java 使用hibernate使用有序数据分页,java,hibernate,Java,Hibernate,在hibernate中使用hql,我们可以使用下面的命令对表数据进行分页,但下面将返回表中的前5条数据记录 String SQL_QUERY = "FROM Order order"; Query query = session.createQuery(SQL_QUERY); query.setFirstResult(1); query.setMaxResults(5); 但是我如何才能对表上的有序数据进行分页,例如按订单id设置的有序数据集?不确定您要问什么,只需在查询中添加

在hibernate中使用hql,我们可以使用下面的命令对表数据进行分页,但下面将返回表中的前5条数据记录

 String SQL_QUERY = "FROM Order order";  
 Query query = session.createQuery(SQL_QUERY);  
 query.setFirstResult(1);
 query.setMaxResults(5);

但是我如何才能对表上的有序数据进行分页,例如按订单id设置的有序数据集?

不确定您要问什么,只需在查询中添加
order by
子句,并根据页面计算第一个结果。像这样的

String HQL_QUERY = "FROM Order o order by o.id";  
Query query = session.createQuery(HQL_QUERY);  
// page size 
query.setMaxResults(5);
// page 1
query.setFirstResult(1);
// page 2
query.setFirstResult(6);
...