用Jsp-taglib来实现分页功能

    分页是比较常用的一种技术,也有很多实现方法。我介绍一下如何用pager-taglib来分页

 

   转:

 Pager-taglib 2.0 是一套分页标签库,可以灵活地实现多种不同风格的分页导航页面,并且可以很好的与服务器分页逻辑分离。这样一套标签库,你想你的分页效果怎样就能怎样。
pager-taglib,可以方便的帮我们完成分页的功能,当然大家不要担心他的效率,它支持每次从数据库中只取出要显示的数据,这样可以减少数据库的压力。

简单说一下它的怎么使用:
1、拷贝pager-taglib.jar包
2、在JSP页面中使用taglib指令引入pager-taglib标签库
3、使用pager-taglib标签库进行分页处理

pg:pager【这个标签用来设置分页的总体参数】重要参数说明:
 url:分页的链接根地址,pager标签会在这个链接的基础上附加分页参数
 items:总记录数,pager标签正是根据这个值来计算分页参数的
 maxPageItems:每页显示的行数,默认为10
 maxIndexPages:在循环输出页码的时候,最大输出多少个页码,默认是10
 
pg:first【第一页的标签】重要参数说明:
 export变量的意义:
 pageUrl - 分页链接URL地址(最重要的export参数)
 pageNumber - 页码
 firstItem - 首页第一行的索引值
 lastItem - 首页最后一行的索引值
 
pg:pre【上一页标签】重要参数说明:
 export变量的意义:
 pageUrl - 分页链接URL地址(最重要的export参数)
 pageNumber - 页码
 firstItem - 前页第一行的索引值
 lastItem - 前页最后一行的索引值

pg:next【下一页标签】重要参数说明:
 export变量的意义:
 pageUrl - 分页链接URL地址(最重要的export参数)
 pageNumber - 页码
 firstItem - 下页第一行的索引值
 lastItem - 下页最后一行的索引值
 
pg:last重要参数说明:
 export变量的意义:
 pageUrl - 分页链接URL地址(最重要的export参数)
 pageNumber - 页码
 firstItem - 尾页第一行的索引值
 lastItem - 尾页最后一行的索引值
 
pg:pages【这个标签用来循环输出页码信息】重要参数说明:
 export变量的意义:
 pageUrl - 分页链接URL地址(最重要的export参数)
 pageNumber - 页码
 firstItem - pageNumber这个页码指定的那一页的第一行的索引值
 lastItem - pageNumber这个页码指定的那一页的最后一行的索引值

简单的一个网页标签的使用:
<pg:pager items="1001" export="currentPageNumber=pageNumber">
 <pg:first><a href="${pageUrl}">首页</a></pg:first>
 <pg:prev><a href="${pageUrl}">前页</a></pg:prev>
 <pg:pages>
  <c:choose>
  <c:when test="${pageNumber eq currentPageNumber }">
  <font color="red">${pageNumber }</font>
  </c:when>
  <c:otherwise>
  <a href="${pageUrl }">${pageNumber}</a>
  </c:otherwise>
  </c:choose>
 </pg:pages>
 <pg:next><a href="${pageUrl}">下页</a></pg:next>
 <pg:last><a href="${pageUrl}">尾页</a></pg:last>
</pg:pager>

 

需要注意的地方:很重要,我就是在这里翻了跟头了的

1.Pager-taglib向页面传的参数是:pager.offset,这个参数的意思是页面的偏移量,也就是指你说选择的页面的页数。这个参数貌似从0开始,也就是你选择第一页的话它传的参数是0.所以在捕获这个参数的时候要记得+1.

2.这个标签的使用其实很简单,你要做的就是简单地写一个控制文件,可以是servlet,可以是portlet,也可以直接放在jsp里,然后去页面捕捉pager.offset这个参数去数据库中重新挖取数据。

3.切记,offset传过来的值是偏移量,也就是指下一堆记录的第一条的偏移量,比如你的记录/页pageSize=3,那么传过来的offset应该如下处理:offset/3+1   这样得到的就是要生成的页数!

    offset/

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值