ssm mysql动态分页_SSM项目手动分页详解
環境:idea+mysql
首先,既然是mysql,那肯定會用到limit,用這個分頁的確很方便。
第一步,編寫sql語句
1
2 SELECT3 *4 FROM5 image6
7
8 status=#{status}9
10
11 AND examine=#{examine}12
13
14 AND sex=#{sex}15
16
17 limit #{start},#{pageSize}18
注意這里的參數,start是查詢的第幾頁[start是從0開始],pageSize是每頁顯示的數據量
關于 當前頁和下一頁之間的規律關系,這里轉載一篇博客,寫的很詳細。
第二步,編寫controller
1 /**
2 *@paramexamine 審核狀態3 *@paramgender 性別4 *@paramrequest5 *@return
6 */
7 @RequestMapping(method = RequestMethod.GET, value = "/avatar")8 publicString selectAvatar(Integer examine, Integer gender,9 HttpServletRequest request, Integer status,10 Integer currentPage) {1112 try{13 currentPage = (currentPage==null?1:currentPage);14 int total =image_examineService.getCount();15 int pageNum = 0;16 if(total%100==0){17 pageNum = total/100;18 }else{19 pageNum = total/100 + 1;20 }21 System.out.println("currentPage:"+currentPage+"total:"+total+"pageNum:"+pageNum);22
23 List list = imageService.selectImages(status, examine == null ? 3: examine,24 gender,(currentPage-1)*100,100);25 request.setAttribute("list", list);26 復制代碼是不對滴,自己敲~
27 request.setAttribute("pageNum",pageNum);28 request.setAttribute("currentPage",currentPage);29 30 } catch(Exception e) {31 e.printStackTrace();32 }33 return "image";34 }
參數列表? ?第10行? 只需要關注 currentpage,這個是從頁面獲取到的,我們需要以這個數值來計算上下頁。
24行
(currentPage-1)*100,100 這個在我轉載的博客中有解釋,即 limit后面的兩個參數
pageNum 意思是 數據一共多少頁
14-20行是計算多少頁,獲取pageNum,計算方式很簡單 select count(1) from xxx
第三步,編寫頁面參數
數據的遍歷就不寫了,直接寫按鈕
1
2 上一頁
3 當前第${currentPage}頁,共${pageNum}頁4 下一頁
5
總結
以上是生活随笔為你收集整理的ssm mysql动态分页_SSM项目手动分页详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 单元测试_Python 单
- 下一篇: linux cmake编译源码,linu