有的时候我们需要查询数据库,然后判断是否满足条件再返回,这个时候分页就可以用 list 集合的 subList 方法,这个时候记得subList(int start,int end),这个方法不包含下标为end的数据,所以要end+1
Integer totalCount = dataList.size();
Integer totalPages = totalCount % pageSize == 0 ? totalCount / pageSize : totalCount / pageSize + 1;
if(totalCount > curPage * pageSize - 1) {
Integer start = (curPage-1)*pageSize;
Integer end = (curPage*pageSize);
dataList = dataList.subList(start, end);
}else {
dataList = dataList.subList((curPage-1)*pageSize, totalCount);
}
map.put("data", dataList);
map.put("totalPages", totalPages);
map.put("curPage", curPage);
map.put("pageSize", pageSize);
map.put("totalCount", totalCount);