ssm mysql动态分页_SSM项目手动分页详解
環(huán)境:idea+mysql
首先,既然是mysql,那肯定會(huì)用到limit,用這個(gè)分頁(yè)的確很方便。
第一步,編寫sql語(yǔ)句
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
注意這里的參數(shù),start是查詢的第幾頁(yè)[start是從0開(kāi)始],pageSize是每頁(yè)顯示的數(shù)據(jù)量
關(guān)于 當(dāng)前頁(yè)和下一頁(yè)之間的規(guī)律關(guān)系,這里轉(zhuǎn)載一篇博客,寫的很詳細(xì)。
第二步,編寫controller
1 /**
2 *@paramexamine 審核狀態(tài)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 復(fù)制代碼是不對(duì)滴,自己敲~
27 request.setAttribute("pageNum",pageNum);28 request.setAttribute("currentPage",currentPage);29 30 } catch(Exception e) {31 e.printStackTrace();32 }33 return "image";34 }
參數(shù)列表? ?第10行? 只需要關(guān)注 currentpage,這個(gè)是從頁(yè)面獲取到的,我們需要以這個(gè)數(shù)值來(lái)計(jì)算上下頁(yè)。
24行
(currentPage-1)*100,100 這個(gè)在我轉(zhuǎn)載的博客中有解釋,即 limit后面的兩個(gè)參數(shù)
pageNum 意思是 數(shù)據(jù)一共多少頁(yè)
14-20行是計(jì)算多少頁(yè),獲取pageNum,計(jì)算方式很簡(jiǎn)單 select count(1) from xxx
第三步,編寫頁(yè)面參數(shù)
數(shù)據(jù)的遍歷就不寫了,直接寫按鈕
1
2 上一頁(yè)
3 當(dāng)前第${currentPage}頁(yè),共${pageNum}頁(yè)4 下一頁(yè)
5
總結(jié)
以上是生活随笔為你收集整理的ssm mysql动态分页_SSM项目手动分页详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python 单元测试_Python 单
- 下一篇: 悖论对计算机科学影响,数学和计算机科学的