1、每页显示的行数,默认为10 maxIndexPages:在循环输出页码的时候,最大输出多少个页码,默认是10pg:first 第一页的标签pre 上一页标签next 下一页标签last 最后一页标签pages 循环输出页码信息 对于上面的标签都有类似的export变量: pageUrl - 分页链接URL地址(最重要的export参数) pageNumber- 页码 firstItem 对应页第一行的索引值 lastItem -对应页最后一行的索引值三、项目中使用pager-taglib:1、引入对应的标签库:htmlview plaincopy1. %taglibprefix=pguri=2
2、. 3. /span2、使用标签布置页面:pagerurl=org.doitems=$pm.totalexport=currentPageNumber=pageNumber3. paramnamepg:paramname=parentId/4. 5. first6. 7. ahrefahref=$pageUrl首页8. 9. /pg:10. 11. prev12. 13. $pageUrl前页18. 19. c:choose20. 21. whentestc:whentest=$currentPageNumbereqpageNumber22. 23. fontcolorfontcolor=re
3、d$pageNumber24. 25. /c:when26. 27. otherwise28. 29. 30. 31. 32. 33. 34. 35. 36. 37. next38. 39. 后页44. 45. 尾页46. 47. 48. 49. 需要注意的是: 很多时候,在不同的页面中跳转的时候,需要传递一个id,在保持这个数据的时候,不能直接跟在url后面,需要使用param name=来传递。为了给当前页添加一些特殊的效果,使用currentPageNumber给pageNumber指定了一个别名,这是为了test=$currentPageNumber eq pageNumber 判断的
4、需要。Items表示:返回来的总记录数,由此,该框架采用的是假分页。url:指明了请求的入口地址,是与struts的配置文件struts-config.xml中的配置相关联。3、设置offset和pagesize变量的值: 比较好的做法是在系统变量类中,将其设置到ThreadLocal变量中。这里将其封装到了SystemContext类中:javapublicclassSystemContextprivatestaticThreadLocaloffset=newThreadLocal();pagesizepublicstaticintgetOffset()Integeros(Integer)o
5、ffset.get();if(os=null)return0;returnos;voidsetOffset(intoffsetvalue)offset.set(offsetvalue);removeOffset()offset.remove();getPagesize()Integerps(Integer)pagesize.get();if(ps=returnInteger.MAX_VALUE;returnps;setPagesize(intpagesizevalue)49. pagesize.set(pagesizevalue);50. 51. 52. 53. removePagesize(
6、)54. 55. pagesize.remove();56. 57. 58. 59. 4、定义分页过滤器PagerFilter: 该过滤器调用SystemContext类的方法,给offset和pagesize变量赋值。publicclassPagerFilterimplementsFilterOverridepublicvoiddestroy()doFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)throwsIOException,ServletExceptionHttpServletRequesthttpRequest(HttpServletRequest)request;SystemContext.setOffset(getOffset(httpRequest);SystemContext.setPagesize(getPagesize(httpRequest);23.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1