关于mybatis分页PageHelper的使用

1.导入meavn.jar包

<dependency>
  <groupId>com.github.pagehelper</groupId>
  <artifactId>pagehelper</artifactId>
  <version>5.1.8</version>
</dependency>

2.修改Spring.xml文件

<!--配置pagehelper-->

<property name="plugins">
    <array>
        <bean class="com.github.pagehelper.PageInterceptor">
            <property name="properties">
                <!--使用下面的方式配置参数value为空表示默认配置-->
                <value>
                </value>
            </property>
        </bean>
    </array>
</property>

3.插入controller层

@GetMapping("/findAll")
// 传3个参数 
//model把后端数据存储在对象里传递到前端 required 表示该参数是否必要,默认true
//pageNum 代表分的页数,pagSize代表每页数据个数(defaultValue = "3")设置默认为3条shuju
public String getAll(Model model, @RequestParam(defaultValue = "1", required = true) int pageNum, @RequestParam(defaultValue = "3", required = false) int pagSize) {
    // 开启分页
    PageHelper.startPage(pageNum, pagSize);
    List<Orders> list = ordersService.findAll();
    System.out.println(list);
    // 创建pag对象
    PageInfo<Orders> pageInfo = new PageInfo<>(list);
    model.addAttribute("ordersList",pageInfo);
    return "orders-list";
}

4.一些常用的关键词

PageInfo这个类
   //当前页
    private int pageNum;
    //每页的数量
    private int pageSize;
    //当前页的数量
    private int size;
 
    //由于startRow和endRow不常用,这里说个具体的用法
    //可以在页面中"显示startRow到endRow 共size条数据"
 
    //当前页面第一个元素在数据库中的行号
    private int startRow;
    //当前页面最后一个元素在数据库中的行号


    private int endRow;
    //总记录数
    private long total;
    //总页数
    private int pages;
    //结果集
    private List<T> list;
    //前一页
    private int prePage;
    //下一页
    private int nextPage;
   private int[] navigatepageNums;
    //导航条上的第一页
    private int navigateFirstPage;
    //导航条上的最后一页
    private int navigateLastPage


    //是否为第一页
    private boolean isFirstPage = false;
    //是否为最后一页
    private boolean isLastPage = false;
    //是否有前一页
    private boolean hasPreviousPage = false;
    //是否有下一页
    private boolean hasNextPage = false;
    //导航页码数
    private int navigatePages;
    //所有导航页号

<div class="box-tools pull-right">
							<ul class="pagination">
								<li><a href="/product/findAll?pageNum=${productList.navigateFirstPage}&pageSize=${productList.pageSize}" aria-label="Previous">首页</a></li>
								<li><a href="/product/findAll?pageNum=${productList.navigateFirstPage}">上一页</a></li>
								<c:forEach begin="1" end="${productList.pages}" var="x">
									<li><a href="/product/findAll?pageNum=${x}&pageSize=${productList.pageSize}">${x}</a></li>
								</c:forEach>

<%--								<li><a href="#">2</a></li>--%>
<%--								<li><a href="#">3</a></li>--%>
<%--								<li><a href="#">4</a></li>--%>
<%--								<li><a href="#">5</a></li>--%>
								<li><a href="/product/findAll?pageNum=${productList.nextPage}&pageSize=${productList.pageSize}">下一页</a></li>
								<li><a href="/product/findAll?pageNum=${productList.navigateLastPage}&pageSize=${productList.pageSize}" aria-label="Next">尾页</a></li>
							</ul>
						</div>

  

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值