现在准备做一个大点的项目,最少几十万的数据量
以前采用的是hibernate分页方式:
Query q = session.createQuery(HQL);
q.setFirstResult(firstResult);
q.setMaxResults(maxResults);
return q.list();我在想如何用oracle的SQL语句 rownum来进行分页,是不是比上面在HIBERNATE分页效率好点?有做过或者了解的吗,请解答一下

解决方案 »

  1.   

    hibernate  对oracle的就是用rownum分页的
      

  2.   

    hibernate的分页方式,就是根据rownum分页的。
      

  3.   

     那还有必要改进吗?这样效率到底行不行呢?
    看到网上不少直接利用SQL语句来分页的....
      

  4.   


    分页都是采用sql方式分页的,这样效率高些!
      

  5.   

    所谓HIBERNATE分页,不就是别人帮你把分页sql写好了而已。
      

  6.   

    都可以的。你也可以吧Hinbernate对Oracle数据分页的代码显示并拷贝出来,直接放在你自己的程序里。
      

  7.   

    Hinbernate的分页就是用sql根据rownum来实现的,只是包装了一下,如果自己写的话效率会好些.可以用分析函数 rownum() over(order by col)实现.