分页的实现

需要创建的对象

1
2
3
4
5
private int currPage;
private int pageSize;//每页的记录数
private int totalCount;//总记录
private int totalPage;//总页数
private List<Article> lists;//每页显示的数据

分页实现的逻辑基础

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
      //创建一个map用于接收后台传递过来的值
HashMap<String,Object> map = new HashMap<String,Object>();
//创建一个分页的对象
PageBean<Article> pageBean = new PageBean<Article>();

//封装当前页数
pageBean.setCurrPage(currentPage);
//每页显示的数据
int pageSize = 5;
pageBean.setPageSize(pageSize);

//封装总记录数
int totalCount = webIndexDao.getCount(article);
pageBean.setTotalCount(totalCount);

//封装总页数
double tc = totalCount;
Double num = Math.ceil(tc/pageSize);
pageBean.setTotalPage(num.intValue());

map.put("start",(currentPage-1)*pageSize);
map.put("size",pageBean.getPageSize());
map.put("type",article.getType());
List<Article> articleList = webIndexDao.getByPageType(map);
pageBean.setLists(articleList);

return pageBean;