【RuoYi-Vue-Plus】学习笔记 08 - Mybatis Plus 分页插件实现分页功能

前言

前段时间框架发布了新版本 3.5.0,其中有一项是重构了分页功能。虽然分页功能并不复杂,但是基本上任何项目都会涉及到分页,而且我比较喜欢框架中对于分页功能的实现的代码,对比自己以前的项目简洁许多,所以这次就单独拿来说一下。

参考目录

在框架 wiki 中也有分页功能的描述以及使用。

代码分析

1、分页构建使用

TestDemoServiceImpl#customPageList()
在这里插入图片描述
TestDemoMapper#customPageList()
在这里插入图片描述
在这里插入图片描述
和 MP 原本的分页使用一样,在 XXMapper 中加上分页参数(注意分页参数要放在首位),SQL中无需再加分页参数。

框架中构建 page 参数比以前要简单很多,在 PageQuery 中对分页参数构建进行了封装,只需要调用 pageQuery.build() 方法即可,不需要再 new Page()

1.1、构建分页参数

PageQuery#build()
在这里插入图片描述
PageQuery#buildOrderItem()
在这里插入图片描述

2、分页插件 paginationInnerInterceptor

MybatisPlusConfig#paginationInnerInterceptor()
在这里插入图片描述
官方文档属性介绍:
在这里插入图片描述

2.1、分页溢出处理 overflow

PaginationInnerInterceptor#continuePage()
在这里插入图片描述
PaginationInnerInterceptor#handlerOverflow()
在这里插入图片描述
当属性 overflow 设置为 true,会判断当前页码是否超过最大页码,如果超过则调用 handlerOverflow() 方法,将当前页码设置为第1页。

2.2、单页条数限制 maxLimit

PaginationInnerInterceptor#handlerLimit()
在这里插入图片描述
在组件中设置 limit 为 -1,因此没有限制单页最大条数。

PaginationInnerInterceptor#beforeQuery()
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MichelleChung

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值