mybatisPlus分页配置操作
目录
分页操作在实际开发中非常的常见,我们在各种平台和网站中都可以看到分页的效果。
例如:京东商城的分页效果
支持的数据库
mysql,oracle,db2,h2,hsql,sqlite,postgresql,sqlserver,Phoenix,Gauss ,clickhouse,Sybase,OceanBase,Firebird,cubrid,goldilocks,csiidb,informix,TDengine,redshift
达梦数据库,虚谷数据库,人大金仓数据库,南大通用(华库)数据库,南大通用数据库,神通数据库,瀚高数据库,优炫数据库
在MybatisPlus中我们如何配置分页呢?这里我们思考一下
在MybatisPlus中的查询语句是怎么实现的,我们可以通过两种方式实现查询语句
【1】通过MybatisPlus提供的方法来实现条件查询
【2】通过自定义SQL语句的方式来实现查询
接下来我们就来演示这两种分页方式如何实现
分页插件
在大部分场景下,如果我们的SQL没有这么复杂,是可以直接通过MybatisPlus提供的方法来实现查询的,在这种情况下,我们可以通过配置分页插件来实现分页效果
分页的本质就是需要设置一个拦截器,通过拦截器拦截了SQL,通过在SQL语句的结尾添加limit关键字,来实现分页的效果
接下来看一下配置的步骤
【1】通过配置类来指定一个具体数据库的分页插件,因为不同的数据库的方言不同,具体生成的分页语句也会不同,这里我们指定数据库为Mysql数据库
DbType.MYSQL:指定的是mysql数据库的分页
【2】实现分页查询效果
自定义分页插件
在某些场景下,我们需要自定义SQL语句来进行查询。接下来我们来演示一下自定义SQL的分页操作
【1】在UserMapper.xml映射配置文件中提供查询语句
【2】在Mapper接口中提供对应的方法,方法中将IPage对象作为参数传入
- 参数page:为查询的结果集进行一个自动分页.换句话来说,就是指定查询出来的结果集怎么样显示。比如:返回的结果集要显示第1页的数据,并且每页显示10行 —> new Page(1,10)
- 编写一个普通的list查询:需求显示什么样的数据,你只需要给我一个list就行了。参数page会按照你的规则进行分页。
- 继承Page实现自己的分页对象:显示下一行、前一行等等这种功能,你就需要自己写一个分页对象规则。
【3】实现分页查询效果
IPage对象是MyBatis-Plus内置的一个分页对象,其中调用接口可能会用到的属性有如下几个
- records: 查询出的列表对象
- pages: 分页后的总页数
- total: 总条数
- current: 当前页数
- size: 每页条数
- 点赞
- 收藏
- 关注作者
评论(0)