daoimp:
1 /**
2 * @用戶數據分頁 pageNo 當前頁數 pageSize 每頁行數
3 */
4 public List<Users> getUsersFenye(final int pageNo, final int pageSize)
5 throws Exception {
6 List<Users> list = (List<Users>) this.getHibernateTemplate()
7 .executeFind(new HibernateCallback() {
8 public Object doInHibernate(Session session)
9 throws HibernateException, SQLException {
10 return session
11 .createQuery(
12 "from Users users where usid != 1 order by usid asc")
13 .setFirstResult(pageNo * (pageSize))
14 .setMaxResults(pageSize).list();
15 }
16 });
17 return list;
18 }
Action:
1 public String getList() {
2 List<Users> list = null;
3 int pageNo = request.getParameter("pageNo") == null ? 0 : Integer
4 .parseInt(request.getParameter("pageNo"));// 當前頁數
5 int pageSize = 5;// 每頁顯示的行數
6 int rows = 0;// 總共的行數
7 try {
8 rows = usersDao.selectUsers().size();
9 // 通過查詢所有 再點它的size
10 int pages = rows % pageSize == 0 ? rows / pageSize : rows
11 / pageSize + 1;// 查詢出總共的頁數
12 // 進行判斷 當前的頁數小于一 就讓它顯示首頁
13 if (pageNo < 0) {
14 pageNo = 0;
15 // 當前頁數大于尾頁 顯示尾頁
16 } else if (pageNo > pages - 1) {
17 pageNo = pages - 1;
18 }
19 list = usersDao.getUsersFenye(pageNo, pageSize);
20 request.setAttribute("uList", list);
21 request.setAttribute("pageNo", pageNo);
22 request.setAttribute("pages", pages);
23 } catch (Exception e) {
24 e.printStackTrace();
25 }
26 return "selectUAll";
27 }
還算簡單 沒有什么復雜的代碼 希望能幫到大家!!