java代码
String pageNumberStr = request.getParameter ("pageNumber");
int pageNumber = 1;
int pageSize = 5;
try {
pageNumber = Integer.parseInt (pageNumberStr);
if (pageNumber < 1) {
pageNumber = 1;
}
} catch (NumberFormatException e) {
e.printStackTrace ();
}
RouteService service = new RouteServiceImpl ();
PageInfo<Route> pageInfo = service.findByPage (pageNumber, pageSize);
request.setAttribute ("pi", pageInfo);
request.getRequestDispatcher ("/route_list.jsp").forward (request, response);
}
XMl配置
<!--分页插件-->
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<!--数据库方言-->
<property name="helperDialect" value="mysql"/>
</plugin>
</plugins>
service层
@Override
public PageInfo<Route> findByPage(int pageNumber,int pageSize) {
SqlSession sqlSession = MyBatisUtils.getSqlSession ();
RouteDao routeDao = sqlSession.getMapper (RouteDao.class);
PageHelper.startPage (pageNumber, pageSize);
//需要分页
List<Route> routeList = routeDao.findByPage ();
PageInfo<Route> pageInfo = new PageInfo<> (routeList,10);//页码数量
return pageInfo;
}
前端
<div class="box-footer">
<div class="pull-left">
<div class="form-group form-inline">
总共${pi.pages}页,共${pi.total}条数据。
</div>
</div>
<div class="box-tools pull-right">
<ul class="pagination">
<c:if test="${pi.pageNum>1}">
<li>
<a href="${pageContext.request.contextPath}/route?action=findByPage&pageNumber=1"
aria-label="Previous">首页</a>
</li>
<li>
<a href="${pageContext.request.contextPath}/route?action=findByPage&pageNumber=${pi.prePage}">上一页</a>
</li>
</c:if>
<%-- <c:forEach items="${pi.navigatepageNums}" var="arr">
<li><a href="">${arr}</a></li>
</c:forEach>--%>
<c:forEach begin="${pi.navigateFirstPage}" end="${pi.navigateLastPage}" step="1" var="num">
<li ${pi.pageNum == num? 'class = "active"' :''}><a href="route?action=findByPage&pageNumber=${num}">${num}</a></li>
</c:forEach>
<c:if test="${pi.pageNum<pi.pages}">
<li><a href="route?action=findByPage&pageNumber=${pi.nextPage}">下一页</a></li>
<li>
<a href="route?action=findByPage&pageNumber=${pi.pages}" aria-label="Next">尾页</a>
</li>
</c:if>
</ul>
</div>