分页的三种方法详解之集合法

1.集合法
通过一次性从数据库中取出数据放到一个集合中,由前端页面提供第几页,一页有几行数据来进行在集合内的截取操作,截取之后放入集合中展示在页面之中。
实现方式:
subList()方法进行截取
优点:简单,易用
缺点:效率低,每次翻页都需要查询全部
实现中出现的问题解释:
ResultSet是一个接口,它不能作为返回值使用,如果要存储它之中的值,最好把数据存储到集合之中 。
2.看到下面的代码我有点蒙圈,为什么可以这样;
解释就是我们是通过转发的方式到jsp页面中去的,所以两个相邻页面的request对象共享,这样就保证了我们在翻页的时候不管是点击首页还是末尾页都可以从容跳转。
核心代码:
servlet中的代码

request.setAttribute("curPage",page);
   request.setAttribute("prePage",page>1?page-1:page);
   request.setAttribute("nextPage",totalPage>page?page+1:totalPage);
   request.setAttribute("totalPage",totalPage);

前端

 <form method="post" action="LookServlet" style="display: inline">
                <input type="hidden" name="page" value="${curPage }">
                <input type="hidden" name="title" value="${title}">
                <input type="submit" value="首页" class="btn">
            </form>
            
            <form method="post" action="LookServlet" style="display: inline">
                <input type="hidden" name="page" value="${prePage}">
                <input type="hidden" name="title" value="${title}">
                <input type="submit" value="上一页" class="btn">
            </form>
            <form method="post" action="LookServlet" style="display: inline">
                <input type="hidden" name="page" value="${nextPage}">
                <input type="hidden" name="title" value="${title}">
                <input type="submit" value="下一页" class="btn">
            </form>
            <form method="post" action="LookServlet" style="display: inline">
                <input type="hidden" name="page" value="${totalPage}">
                <input type="hidden" name="title" value="${title}">
                <input type="submit" value="尾页" class="btn">
            </form>
                                           第${curPage}页/共${totalPage}页
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值