MybatisPlus Page类的解析与使用

Mybatis-Plus Page类的详解与使用

Page类

mp3.3.0后提供了分页这个扩展功能,传送门Page类源码看这里

源码分析

Page源码
records 用来存放查询出来的数据
total 返回记录的总数
size 每页显示条数,默认 10
current 当前页,默认1
orders 排序字段信息
optimizeCountSql 自动优化 COUNT SQL,默认true
isSearchCount 是否进行 count 查询,默认true
hitCount 是否命中count缓存,默认false

如何使用

mp可以自动帮我们分页,但是需要进行配置
在config包下新建配置

@EnableTransactionManagement
@Configuration
public class MybatisPlusConfig {
    @Bean
    public PaginationInterceptor paginationInterceptor() {
        PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
        paginationInterceptor.setCountSqlParser(new JsqlParserCountOptimize(true));
        return paginationInterceptor;
    }
}

***dao层***写接口,如果要使用curd方法,就要继承baseMapper

@Repository("userMapper")
public interface UserMapper extends BaseMapper<User> {}

自定义方法

Page<UserDTO> queryUsers(Page<UserDTO> page)

一旦传入了Page,mybatis-plus就自动开始进行分页。

传入的Page如何构造
看service层

userMapper.queryUsers(new Page<>(pageNum,pageSize))

最简单的构造方法就是传入当前在几页,一页有几条数据
最后返回的json就是这个样子了。
在这里插入图片描述
这里注意一个细节,pages是mp给我们自动配置出来用来传给前端表示总共有几页的参数。

MybatisPlus的Page是一个用于分页查询的工具。它可以方便地进行分页查询,并提供了一些有用的方法来获取分页相关的信息。 在Mybatis-Plus中,Page<T>除了提供了获取当前页码、每页记录数、总记录数等数据的方法,还提供了计算分页情况(如总页数、起始位置等)的方法。通过使用Page对象,可以轻松地实现分页查询功能。 为了使用Mybatis-Plus的分页功能,需要进行相应的配置。可以在Mybatis-Plus的配置文件中,新增一个分页插件配置,如下所示: ``` public class MybatisPlusConfig { @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); return interceptor; } } ``` 通过添加PaginationInnerInterceptor分页插件到MybatisPlusInterceptor中,可以实现对MySQL数据库的分页查询支持。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [mybatis-plus里面的Page](https://blog.csdn.net/qq_51447496/article/details/131095071)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [mybatis-plus的Page分页配置与操作](https://blog.csdn.net/weixin_64499753/article/details/127242349)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值