Java 冬眠分页

Java 冬眠分页,java,spring,hibernate,Java,Spring,Hibernate,我有一个MySQL Strored过程,我想使用Hibernate调用存储过程,并希望通过分页显示结果 我尝试了以下代码: public List<Master> getAbsentDetails(String fromdate, String todate,int pno) { Query query=getSession().getNamedQuery("AbsentReportproc"); System.out.println("Test");

我有一个MySQL Strored过程,我想使用Hibernate调用存储过程,并希望通过分页显示结果

我尝试了以下代码:

public List<Master> getAbsentDetails(String fromdate, String todate,int pno) {
        Query query=getSession().getNamedQuery("AbsentReportproc");
        System.out.println("Test");
        query.setParameter("_fromdate", fromdate);
        query.setParameter("_todate", todate);
        query.setMaxResults(10);
        query.setFirstResult(ps*(pno-1));

        List<Master> empList=query.list();
        return empList;}
注意: 如果我删除下面的语句

  query.setMaxResults(10);
然后在jsp页面中显示存储过程的结果


感谢

当我面临同样的问题时,我将设置maxresult移到了下方,工作正常

criteria.setFirstResult(10* (pageNumber - 1));
criteria.setMaxResults(10); 

hibernate的日志级别是多少?如果将其设置为ALL,我很确定您可以看到生成的查询。实际上,您必须将hibernate.show_sql属性设置为true才能看到生成的sql。如何通过将存储过程的名称作为参数来创建criteria对象?@Kumar这与我在上面提到的使用方法的链接中的当前问题无关存储过程…您可以这样使用..我的问题是该qtn中的其他内容..我可以获得存储过程的结果..您可以在通过将SQLQuery作为参数传递而创建查询对象的链接中使用它,但我如何使用条件来设置MaxResult()等进行分页
criteria.setFirstResult(10* (pageNumber - 1));
criteria.setMaxResults(10);