为什么要分页
我们浏览网页时,一个网页的记录太多会影响用户的使用和观看,所以今天我学习使用了分页功能,可以将网页按照每页n条记录的标准分成n页,便于查找和观看。
实现分页
实现分页的代码中,我们使用“size=4”的来控制每页显示的记录数为4;又使用“?page=${pageinfo.pageNum-1}"调用pageinfo中的当前页pageNum,将page的值设置为pageNum-1来跳转到上一页。
<div class="box-tools pull-right">
<ul class="pagination">
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=1&size=4" aria-label="Previous">首页</a></li>
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageInfo.pageNum-1}&size=4">上一页</a></li>
<c:forEach begin="1" end="${pageInfo.pages}" var="pageNum">
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageNum}&size=4">${pageNum}</a></li>
</c:forEach>
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageInfo.pageNum+1}&size=4">下一页</a></li>
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageInfo.pages}&size=4" aria-label="Next">尾页</a></li>
</ul>
</div>
同时要在applicationContext.xml文件中添加如下代码:
<property name="plugins">
<array>
<bean class="com.github.pagehelper.PageInterceptor">
<property name="properties">
<props>
<prop key="helperDialect">mysql</prop>
<prop key="reasonable">true</prop> <!--保证当前页为最后一页时点下一页不报错 -->
</props>
</property>