Mybatis-Plus分页插件不起作用,总是返回全部数据
解决办法
1、引入baomidou.mybatisplus(若未引入)
<!-- https://mvnrepository.com/artifact/com.baomidou/mybatis-plus-boot-starter -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version><!-- 推荐版本,可修改 -->
</dependency>
1.1解决或查看引入依赖冲突问题
- 引入后按住ctrl+shift+alt+u
查看有无标红的线,标红即为冲突,右击标红的位置,选择exclude,返回pom文件Maven刷新下,解决冲突
2、添加配置类
创建配置类java文件,内容:
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
/**
* @className: MybatisPageConfig
* @description: MybatisPage配置类
* @author: LiXiangyu
* @date: 2021/8/24 18:11
**/
@EnableTransactionManagement//开启事务
@Configuration
@MapperScan("com.sp.mapper")//加载mp接口
public class MybatisPageConfig{
//mybatis-plus分页插件 该写法在高版本中已过时
/*@Bean
public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
// 设置请求的页面大于最大页后操作, true调回到首页,false 继续请求 默认false
paginationInterceptor.setOverflow(true);
// 设置最大单页限制数量,默认 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.MYSQL));//Dbtype.数据库 可改成自己对应的数据库,当前为MySQL。
return interceptor;
}
}
原创不易,一键三连,连连看
- END