mybatisplus和pagehelper分页冲突

1、原因:

MyBatis-Plus 和 PageHelper 都是用于 MyBatis 的分页插件,但它们不能同时使用,因为它们之间存在依赖冲突。当两者同时加入项目时,可能会导致启动错误,因为它们依赖的 jsqlparser 版本可能不同。

2、解决 MyBatis-Plus 和 PageHelper 冲突的方法有:

  1. 排除冲突依赖:在 pom.xml 中排除 PageHelper 或 MyBatis-Plus 中的 jsqlparser 依赖,然后单独引入两者都兼容的 jsqlparser 版本。
<!-- PageHelper依赖 -->
<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>最新版本</version>
    <exclusions>
        <exclusion>
            <groupId>com.github.jsqlparser</groupId>
            <artifactId>jsqlparser</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<!-- MyBatis-Plus依赖 -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>${mybatis-plus.version}</version>
    <exclusions>
        <exclusion>
            <groupId>com.github.jsqlparser</groupId>
            <artifactId>jsqlparser</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<!-- 兼容的jsqlparser版本 -->
<dependency>
    <groupId>com.github.jsqlparser</groupId>
    <artifactId>jsqlparser</artifactId>
    <version>两者兼容的版本</version>
</dependency>
  1. 配置MyBatis-Plus的分页插件:在Spring Boot配置类中添加MyBatis-Plus的分页插件配置。
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class MyBatisPlusConfig {
    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor();
    }
}
  1. 配置PageHelper:如果不使用MyBatis-Plus的分页插件,可以在Spring Boot配置类中配置PageHelper。
import com.github.pagehelper.PageInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class PageHelperConfig {
    @Bean
    public PageInterceptor pageInterceptor() {
        return new PageInterceptor();
    }
}
  1. 选择其一:在MyBatis-Plus和PageHelper之间选择一个作为分页插件,通常MyBatis-Plus内置的分页插件已经足够使用。

总结:

选择使用MyBatis-Plus通常是一个更好的选择,因为它提供了更多的功能并且与Spring Boot集成得更好。如果决定使用MyBatis-Plus,就不需要再引入PageHelper。如果选择PageHelper,那么需要确保MyBatis-Plus的分页插件没有被激活,以避免冲突。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

诸葛博仌

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

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

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

打赏作者

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

抵扣说明:

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

余额充值