一、mybatis-plus 版本分页区别

在springboot3.0版本的时候引入mybatis-plus以下依赖包即可实现集成

        <!--mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
        </dependency>

但是分页实现存在版本差异

mybatis-plus 版本 3.5.8 及以下只需要增加配置类即可

mybatis-plus 3.5.9及以上 需要额外引入分页插件依赖同时需要增加配置类

原因是:于 v3.5.9 起,PaginationInnerInterceptor 已分离出来。如需使用,则需单独引入 mybatis-plus-jsqlparser 依赖 

详情见mybatisplus官网 https://baomidou.com/plugins/pagination/

二、版本 3.5.8 及以下依赖及其配置类

        <!--mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
            <!--<version>3.5.8</version>-->
            <version>${mybatisplus.version}</version>
        </dependency>

配置类

package com.qiu.config;

import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class MybatisPlusConfig {
    
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        // 添加分页插件
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }
}
PaginationInnerInterceptor归属包

三、版本3.5.9及以上依赖及其配置类

        <!--mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
            <!--<version>3.5.15</version>-->
            <version>${mybatisplus.version}</version>
        </dependency>

        <!--mybatis-plus-jsqlparser-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-jsqlparser</artifactId>
            <!--<version>3.5.15</version>-->
            <version>${mybatisplus.version}</version>
        </dependency>

配置类

package com.qiu.config;

import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class MybatisPlusConfig {
    
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        // 添加分页插件
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }
}

PaginationInnerInterceptor归属包

四、具体实现项目地址

mybatis-plus 版本 3.5.8 及以下,使用版本 3.5.8

https://gitee.com/qiuxiaodong/demo

项目名称:demo-springboot-mybatisplus

mybatis-plus 3.5.9及以上,使用版本 3.5.15

https://gitee.com/qiuxiaodong/demo

项目名称:demo-springboot-mybatisplus01

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐