日期:2014-05-17  浏览次数:20722 次

hibernate的翻页有没有更好的办法啊?
网上的一半的hibernate的翻页主要的思路是,第一次查出数据库一共有多少记录放在totalRow中,用事先给定的每页记录数pageSize 去除totalRow 得到页数,并且记录一些量值。当再次查询时取参数执行查询。改变页数在视图层自动完成,那就存在这样的一个问题,必须先执行一次gettotalRow的DAO操作,获取执行一次查询,list.size() 这样在数据库 就执行了select * from 把所有的数据查出来,紧紧为了知道又多少行,然后你又要再次去执行查询,获取你想要的特定行,只是不是太低效率了啊
还是如果是多重条件查询,你还要为不同的查询条件去写不同 getTotalRow接口,不同获取实际行的接口,实在太烦了吧?

------解决方案--------------------
这是个问题,原来设计者没有考虑到,不过目前只有这样
------解决方案--------------------
分页基本是这样的

------解决方案--------------------
如果能让hibernate来调用存储过程,然后把分页用存储过程来写应该会好多了吧
------解决方案--------------------
原来如此
------解决方案--------------------
gettotalRow的DAO操作不是select count(1) from table吗?
------解决方案--------------------
<img src="http://10.111.132.134:8080/struts2/tuzi.gif" />
------解决方案--------------------
JQuery翻页比Hibernate简单并且效率高。
LZ可以尝试下。
不要拘禁你的思想
------解决方案--------------------
分页就得这么搞吧,LS这一个是前台,一个是后台的。。