<tr><td colspan="100%"> <jsp:include page="fenye.jsp"> <jsp:param value="<%=pages.getTotalRecords()%>"/> <jsp:param value="<%=pages.getPageSize()%>"/> <jsp:param value="10"/> <jsp:param value="condition"/> </jsp:include> </td></tr>
下面开始写fenye.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %> <% int items = Integer.parseInt(request.getParameter("items")); int maxPageItems = Integer.parseInt(request.getParameter("maxPageItems")); int maxIndexPages = Integer.parseInt(request.getParameter("maxIndexPages")); String params = request.getParameter("params"); %> <%--引入分页框架--%> <%@taglib prefix="pg" uri="http://jsptags.com/tags/navigation/pager" %> <%--参数依次是项目总数 每页显示数量 下方菜单显示数 当前页curPage--%> <pg:pager items="<%=items%>" maxPageItems="<%=maxPageItems%>" maxIndexPages="<%=maxIndexPages%>" export="curPage=pageNumber"> <pg:param/> <pg:first> <a href="https://www.jb51.net/<%=pageUrl%>">首页</a> </pg:first> <pg:prev> <a href="https://www.jb51.net/<%=pageUrl%>">上一页</a> </pg:prev> <pg:pages> <% if(curPage==pageNumber) { %> [<%=pageNumber %>] <% } else { %> <a href="https://www.jb51.net/<%=pageUrl%>"><%=pageNumber %></a> <% } %> </pg:pages> <pg:next> <a href="<%=pageUrl %>">下一页</a> </pg:next> <pg:last> <a href="<%=pageUrl %>">尾页</a> </pg:last> </pg:pager>
分页设计基本就是上面框架,重点是参数传递,这里参数传递利用静态引入的时候,配置jsp:param,然后到fenye,jsp中再取出.
其中pager-taglib中有一个标签是”/>,这个就是针对我的查询条件传递过来的参数,如果没传递,那么查询的话点击下一页也会出错,这里还有一个问题就是编码问题,pager-taglib默认编码是GB2312,你可以重新打包文件编译,也可以在tomcat的server.xml文件中配置urlEncording=”utf-8”,这样就会没问题了.
七.总结
这样的一个框架,如果其他需要实现分页的就可以直接套用了,建立相应的实体类,写好分页代码,直接套用Systemcontex.java和SystemFilter.java(记得在web.xml配置相应的过滤文件),再jsp中可以直接使用fenye.jsp,这样就会省下很多麻烦
您可能感兴趣的文章: