这里记录下IDEA中使用SpringBoot + Mybatis-plus 如何进行分页操作
可参看官方文档 点击进入
1 确保已经在工程中引入了 Mybatis-plus 依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<!-- <version>3.4.0</version> -->
</dependency>
2 相关代码
先看下项目结构,即在一个SpringBoot项目中包含两个子模块
在以下文件中插入代码,由于分页在多个子任务中可能是通用的模块,所以在common子项目中进行创建配置文件
这里直接采用SpringBoot的方式进行
//Spring boot方式
@Configuration
//如果启动类中已经配置了 MapperScan 则在这里可以省略,如果没有配置,则需要添加此句
//里面内容为 *mapper.java 所在的文件夹
@MapperScan("com.baomidou.cloud.service.*.mapper*")
public class MybatisPlusConfig {
// 旧版
@Bean
public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
// 设置请求的页面大于最大页后操作, true调回到首页,false 继续请求 默认false
// paginationInterceptor.setOverflow(false);
// 设置最大单页限制数量,默认 500 条,-1 不受限制
// paginationInterceptor.setLimit(500);
// 开启 count 的 join 优化,只针对部分 left join
paginationInterceptor.setCountSqlParser(new JsqlParserCountOptimize(true));
return paginationInterceptor;
}
// 最新版
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.H2));
return interceptor;
}
}
如下图,本文已经配置了,所以上面的 MapperScanner 可以去除
测试
表示查询成功
**
**
前端页面测试通过