博客园 首页 联系 订阅 管理
 1 Pagination pagination = CommonUtil.createPagination(10, pageIndex);
 2 // 预先设置下page
 3 map.put("numPerPage", pagination.getNumPerPage());
 4 // 由多少页开始,计算从多少页获取数据 start
 5 map.put("start", pagination.getStart());
 6 List<UserInfo> queryList = dictService.queryDictForList(map);
 7 PaginationModel<UserInfo> pageModel = new PaginationModel<UserInfo>(pagination.getNumPerPage(), count,
 8 queryList);
 9 pageModel.setPageIndex(pageIndex - 1);
10 model.addAttribute("pageModel", pageModel);

commonUtil中新建了pagination分页对象

Pagination 通用封装类
  1 /*
  2  * 通用分页封装类
  3  */
  4 public class Pagination {
  5     private int pageSize;// 每页大小
  6     private int totleSize;// 总共多少条
  7     private int totlePage;// 总共多少页
  8     private int pageIndex;// 当前第几页
  9     private String url;// 提交到的页面
 10 
 11     public String getUrl() {
 12         return url;
 13     }
 14 
 15     public void setUrl(String url) {
 16         this.url = url;
 17     }
 18 
 19     public int getPageSize() {
 20         return pageSize;
 21     }
 22 
 23     public void setPageSize(int pageSize) {
 24         this.pageSize = pageSize;
 25     }
 26 
 27     public int getTotleSize() {
 28         return totleSize;
 29     }
 30 
 31     public void setTotleSize(int totleSize) {
 32         this.totleSize = totleSize;
 33     }
 34 
 35     // 计算出总共多少页
 36     public int getTotlePage() {
 37         totlePage = totleSize / pageSize;
 38         if (totleSize % pageSize != 0) {
 39             totlePage++;
 40 
 41         }
 42         return totlePage;
 43     }
 44 
 45     public int getPageIndex() {
 46         return pageIndex;
 47     }
 48 
 49     public void setPageIndex(int pageIndex) {
 50         this.pageIndex = pageIndex;
 51     }
 52 
 53     public String getPageBar() {
 54         StringBuffer sb = new StringBuffer();
 55         sb.append("<div align='center'>");
 56         sb.append("<form action='" + getUrl() + "' method='get'>");
 57         // 一系列的判断逻辑
 58         // 什么时候有首页链接
 59         if (pageIndex == 1) {
 60 
 61             sb.append("首页");
 62         } else {
 63 
 64             sb.append("<a href='" + getUrl() + "?index=1'>首页</a>");
 65         }
 66 
 67         // 什么时候显示上一页链接
 68 
 69         if (pageIndex == 1) { 
 70 
 71             sb.append("上一页  ");
 72         } else {
 73             int temp = pageIndex;
 74             sb.append("<a href='" + getUrl() + "?index=" + (temp - 1)
 75                     + "'>上一页</a>");
 76         }
 77 
 78         // 什么时候显示下一页
 79         if (getTotlePage() == pageIndex) {
 80             sb.append("下一页");
 81         } else {
 82             int temp = pageIndex;
 83             sb.append("<a href='" + getUrl() + "?index=" + (temp + 1)
 84                     + "'>下一页</a>");
 85 
 86         }
 87  
 88         // 什么时候显示尾页呢
 89         if (getTotlePage() == pageIndex) {
 90             sb.append("尾页");
 91         } else {
 92             sb.append("<a href='" + getUrl() + "?index=" + getTotlePage()
 93                     + "'>尾页</a>");
 94 
 95         }
 96 
 97         sb.append("<input type='text' name='index' style='width: 20px' value='"
 98                 + pageIndex + "'  /> <input type='submit' value='到达' />");
 99 
100         sb.append("</form>");
101         sb.append("</div>");
102 
103         return sb.toString();
104 
105     }
106 
107 }