现在的位置: 首页 > 综合 > 正文

自己写的一个有点不同的分页组件,缓存三页的分页组件

2012年12月04日 ⁄ 综合 ⁄ 共 491字 ⁄ 字号 评论关闭

    前一阵听.net企业级的培训,交流的时候偶然说道对分页组件的优化,老师提了一句缓存三页的策略,这样上一页下一页的时候就不需要再连接数据库了,暂时不去评论这个方法的优点与缺点,先把他实现一把看看效果。

     实体类的定义就不说了,可能不同的就是我在里面定了prePage,curPage和nextPage三个对象,用的是oracle数据库,sql语句只要注意rownum的用法就可以了,我把sql语句copy进来(倒序):

   select *

from(select rownum dd,f.*

    from(select *

     from table1

     where id=:id

     and date>=:startdate

     and date<:enddate

     order by date desc)f

    where rownum<=:nextindex)

 where dd>lastindex

:nextindex变量为用户要求页的下一页索引
:lastindex变量为用户要求页的上一页索引
举例来说:每页十条记录,用户要看第四页的数据,则nextindex=50,lastindex=20。

抱歉!评论已关闭.