背景:针对数据量不是特别大的,我们可以采用用com.github.PageHelper进行实现分页。
代码示例:
String pageNum = "";
String pageSize = "";
try {
//获取前端传过来的每页显示多少条
pageNum = map.get("pageNum");
//前端传过来的当前页码
pageSize = map.get("pageSize");
} catch (Exception e) {
ObjectRestResponse objectRestResponse = new ObjectRestResponse();
objectRestResponse.setStatus(500);
objectRestResponse.setMessage("缺少分页参数!");
return objectRestResponse;
}
//开启分页(其后紧跟查询,否则getPageSize()、getPageNum()不能得到数据)
PageHelper.startPage(Integer.parseInt(pageNum), Integer.parseInt(pageSize));
//传入Pagehelper提供的类获取参数信息
PageInfo<Map<String, String>> pageInfo = new PageInfo(datalist);
//新建一个map装填数据
HashMap<String, Object> mapss = new HashMap<>();
mapss.put("datalist", datalist);
//获取数据总数
mapss.put("total", pageInfo.getTotal());
//获取长度
mapss.put("size", pageInfo.getPageSize());
//获取当前页数
mapss.put("page", pageInfo.getPageNum());
return new ObjectRestResponse().data(mapss);