1.导入
在编写实现分页功能时,首先要进行JAR包的下载。
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.2</version>
</dependency>
在POM文件的后面加上这一段代码,保存后将进行自动的下载。在下载完成后,可进行下一步操作
2.页面请求路径的设置
在页面请求路径中,可将页码的描述写成如下的格式,这样将会输出正常的页面,并且每页的记录条数与SIZE有关。在当前页面后如果没有更多的页面时,后面的就没有页码了。
</div>
<!-- /.box-body -->
<div class="box-tools pull-right">
<ul class="pagination">
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=1&size=5" aria-label="Previous">首页</a></li>
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageInfo.pageNum-1}&size=5">上一页</a></li>
<c:forEach begin="1" end="${pageInfo.pages}" var="pageNum">
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageNum}&size=5">${pageNum}</a></li>
</c:forEach>
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageInfo.pageNum+1}&size=5">下一页</a></li>
<li><a href="${pageContext.request.contextPath}/user/findAll.do?page=${pageInfo.pages}&size=5" aria-label="Next">尾页</a></li>
</ul>
</div>
</div>
修改时需要注意的时,SIZE对应的记录数量,我刚开始将size设置为了一,导致了增加用户后只显示一个记录,只有再次点击翻页才能成功执行。
3.service执行具体代码
这里需要将查询数据或者是显示数据的函数进行一定的修改。在函数中需要传递page的页面值和size值,
package com.zhongruan.service.impl;
import com.github.pagehelper.PageHelper;
import com.zhongruan.bean.UserInfo;
import com.zhongruan.dao.IUserDao;
import com.zhongruan.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserService implements IUserService {
@Autowired
private IUserDao userDao;
@Override
public List<UserInfo> findAll(int page ,int size) {
PageHelper.startPage(page,size);
return userDao.findAll();
}
4.修改Controller里的函数
这里需要注意的是,修改了 mv.addObject(“pageInfo”,pageInfo);后,对应的数据显示页面也要修改对应的值。
@RequestMapping(“findAll.do”)
public ModelAndView findAll(@RequestParam(defaultValue=“1”)int page,@RequestParam(defaultValue=“5”)int size){
List infos = userService.findAll( page,size);
PageInfo pageInfo =new PageInfo(infos);
ModelAndView mv=new ModelAndView();
mv.addObject(“pageInfo”,pageInfo);
mv.setViewName(“user-list”);
return mv;
}