分页的实现分析

 

分页如何实现:

百度搜索java相关数据信息。

首先在界面上显示:首页    上一页     下一页    末页

 

算法分析:当前页 int nowpage;你看到的那个页面就是当前页

                首页:nowpage=1;

                末页: int  countpage总页数    nowpage=countpage

               上一页:nowpage=nowpage-1;   if nowpage<=1; nowpage=1;

               下一页:nowpage=nowpage+1;if nowpage>=countpage ;nowpage=countpage;

 

理解概念:每页显示的记录数:10条 int  pagesize;

                当前页开始的记录数:

                     第一页:1-10    nowpage=1;起始记录0;

                     第二页:11-20      nowpage=2;起始记录10;

                     第三页:21-30      nowpage=3;起始记录20;

                     第四页:31-40…………. nowpage=4;起始记录30;

                     第n页:(n-1)*10+1—n*10;  nowpage=n;起始记录:(nowpage-1)*pagesize

                            总结规律如下:(nowpage-1)*pagesize+1

                     总记录数:int countRecord

总页数=总记录数%每页显示的记录数==0?总记录数/每页显示的记录数:总记录数/每页显示的记录数+1;

 

表的操作:

              总记录数:select count(*)from 表名;

              每页显示记录:int pagesize=10;

       总页数:总页数==总记录数%每页显示的记录数==0?总记录数/每页显示的记录数:总记录数/每页显示的记录数+1;

        当前页的记录信息:

          select * from 表名  limit (nowpage-1)*pagesize,pagesize;

 

       this.countPage = this.countRecord%this.PAGESIZE==0?this.countRecord/this.PAGESIZE:this.countRecord/this.PAGESIZE+1;

       return this.countPage;    

在jsp中代码如下

<div align="center">

        <div>

           <h1>显示数据</h1>

           <table border="1px" cellpadding="0" cellspacing="0">

               <thead>

                  <tr>

                  <th>序号</th>

                  <th>姓名</th>

                  <th>性别</th>

                  <th>密码</th>

                  <th>年龄</th>

                  <th>操作</th>

                  </tr>

               </thead>

               <tbody>

               <c:forEach items="${entities}" var="entity">

               <tr>

                  <td>${entity.id}</td>

                  <td>${entity.name}</td>

                  <td>${entity.sex}</td>

                  <td>${entity.pass}</td>

                  <td>${entity.age}</td>

                  <td>

                      <a href="#">edit</a>

                      <a href="#">delete</a>

                  </td>

                  </tr>

               </c:forEach>

                 

               </tbody>

           </table>

        </div>

       

        <div>

           <span><a href="${pageContext.request.contextPath}/listAdmins.do">首页</a></span>

           <span><a href="${pageContext.request.contextPath}/listAdmins.do?nowpage=${nowpage-1}">上一页</a></span>

           <span><a href="${pageContext.request.contextPath}/listAdmins.do?nowpage=${nowpage+1}">下一页</a></span>

           <span><a href="${pageContext.request.contextPath}/listAdmins.do?nowpage=${countPage}">末页</a></span>

           <span>总记录数:${countRecord},总页数:${countPage},当前页:${nowpage}</span>

        </div>

    </div>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值