美文网首页
解决Springboot+jpa分页,页码从0开始

解决Springboot+jpa分页,页码从0开始

作者: ls1228 | 来源:发表于2020-04-17 23:53 被阅读0次

    在使用Springboot+jpa分页过程中发现一个问题,springboot默认的分页页码从0页开始,实际使用过程极不方便,网上查了资料特别麻烦,这边采用的是前端采用正常从1开始的页码,后台查询使用前端页码-1,pageable默认从0页开始的查询方式。

    具体方法如下

    controlle编写方法:根据前端传递页码-1方式,进行后端分页查询

    @RequestMapping(value="/commentList",method=RequestMethod.GET)  public String blogList(Model model,Integer pageNum){    //后端判断页码,为空赋值为1,有值择-1查询     if(pageNum==null){          pageNum=1;      }       Sort sort=new Sort(Sort.Direction.DESC,"id");       Pageable pageable=new PageRequest(pageNum-1,10,sort);       model.addAttribute("page", commentService.listComment(pageable));       return "admin/comment"; }
    

    serviceImpl编写方法:

    public Page<Comment> listComment(Pageable pageable) {       return commentRepository.findAll(pageable); }
    

    前端分页展示:

    <th colspan="9">共【<span th:text="${page.totalElements}"></span>】条记录                                             <div class="ui right floated pagination menu">                          //显示首页按钮,默认1                                                    <a class="item" th:text="首页"                                                        th:href="@{/admin/blogList(pageNum=1)}"></a>                           //显示上一页按钮                         <a class="icon item"                                                       th:href="@{/admin/blogList(pageNum=${page.number})}"                                                        th:unless="${page.first}" th:text="上一页"></a>                         //显示遍历页码,从1开始                                                  <th:block                                                       th:each="pageNum:${#numbers.sequence(1,page.totalPages)}">                              //选中状态添加激活效果                                                        <a class="active item" th:if="${pageNum}==${page.number}+1"                                                         th:text="${pageNum}"                                                            th:href="@{/admin/blogList(pageNum=${pageNum})}"></a>                                                       <a class="item" th:if="${pageNum} ne ${page.number}+1"                                                          th:text="${pageNum}"                                                            th:href="@{/admin/blogList(pageNum=${pageNum})}"></a>                                                   </th:block>                             //下一页按钮                                                 <a class="icon item"                                                        th:href="@{/admin/blogList(pageNum=${page.number}+2)}"                                                      th:unless="${page.last}" th:text="下一页"></a>                              //末页按钮                          <a class="item" th:text="末页"                                                       th:href="@{/admin/blogList(pageNum=${page.totalPages})}"></a>                                               </div>                                          </th>
    

    展示分页效果图:

    1587138599.png

    相关文章

      网友评论

          本文标题:解决Springboot+jpa分页,页码从0开始

          本文链接:https://www.haomeiwen.com/subject/ogppvhtx.html