springboot實現分頁


這里項目是springboot,mybatis,thymeleaf,實現我自制的商城項目后台頁面的分頁功能。
參考我之前總結的分頁,簡單的處理一下就可以了
上代碼
首先寫一個超鏈接跳轉到controller層的方法

<a href="/demo/page" target="iframe">商品管理</a>

然后寫后台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";
}

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);

需要注意的是,使用的是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>

然后分頁就完成了
在這里插入圖片描述
但是上面的只是一個頁面,如果是多個頁面的話,代碼就會重復,因此我想找時間再把上面的分頁封裝起來,以后使用時可以直接調用即可,哈哈。有問題可以留言,謝謝!


免責聲明!

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



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