springboot實現分頁


上代碼
首先寫一個超鏈接跳轉到controller層的方法

<a href="/demo/page" target="iframe">商品管理</a>
1
然后寫后台controller層代碼

/**
* 后台商品頁面分頁
*/
@RequestMapping("/page")
public String page(String pageNumber,Model model){
String spPage=pageNumber;
//設置每頁條數
int pageSize=5;
//頁數
int pageNo=0;
if(spPage==null){
pageNo=1;
}else {
pageNo = Integer.valueOf(spPage);
if (pageNo < 1) {
pageNo = 1;
}
}
//設置最大頁數
int totalCount=0;
int count=selectService.getCount(phone);
if(count>0){
totalCount=count;
}
int maxPage=totalCount%pageSize==0?totalCount/pageSize:totalCount/pageSize+1;
if(pageNo>maxPage){
pageNo=maxPage;
}
tempPageNo=(pageNo-1)*pageSize;
//計算總數量
//分頁查詢
Map map=new HashMap();
map.put("pageNo",tempPageNo);
map.put("pageSize",pageSize);
map.put("phone",phone);
List<Map> list=selectService.pageList(map);
//最后把信息放入model轉發到頁面把信息帶過去
model.addAttribute("list",list);
model.addAttribute("pageNo",pageNo);
model.addAttribute("totalCount",totalCount);
model.addAttribute("maxPage",maxPage);
return "back/shangpin";
}
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Mapper層的代碼

/**
* 商品查詢總條數
*/
@Select(value = "select count(*) as cou from shangpin group by sellerAccount having sellerAccount>=1 and sellerAccount=#{phone};")
int getCount(String phone);
/**
* 商品分頁查詢
*/
@Select(value = "select * from shangpin where sellerAccount=#{phone} limit #{pageNo},#{pageSize}")
List<Map> pageList(Map map);
1
2
3
4
5
6
7
8
9
10
需要注意的是,使用的是thymeleaf,則在最后把信息放入的容器只能是model。最后把所有的信息都轉發到商品管理頁面。

商品管理html頁面簡單寫一下,其他沒關系的都省略了,只干挑頭的。

<a th:href="@{/demo/page?pageNumber=1}">首頁</a>
<a th:href="@{'/demo/page?pageNumber='+${pageNo-1}}">上一頁</a>
<a th:href="@{'/demo/page?pageNumber='+${pageNo+1}}">下一頁</a>
<a th:href="@{'/demo/page?pageNumber='+${maxPage}}">尾頁</a>
1
2
3
4
然后分頁就完成了

---------------------


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM