Mybatis-Plus3.5.x依赖、兼容性问题及报错Invalid value type for attribute 'factoryBeanObjectType': java.lang.String解决方案

Mybatis-Plus3.5.x依赖、兼容性问题及报错Invalid value type for attribute 'factoryBeanObjectType': java.lang.String解决方案

原因mybatis-plus-boot-startermybatis-spring版本与SpringBooot3不兼容

方式1

mybatis-plus-boot-starter替换为mybatis-plus-spring-boot3-starter

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

方式2

重新引入mybatis-spring依赖

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.9</version>
    <exclusions>
        <exclusion>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
        </exclusion>
    </exclusions>
</dependency>
 <dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>3.0.4</version>
</dependency>

关于mybatis-plus-boot-starter:3.5.9的SQL语句解析器jsqlparser问题

  • 如分页插件PaginationInnerInterceptor、多租户插件TenantLineInnerInterceptor

为了解耦jsqlparser依赖,因为高版本不再支持JDK1.8,针对这个问题现在拆分为mybatis-plus-jsqlparser-4.9mybatis-plus-jsqlparser 两个独立包前者应用于JDK1.8及不想升级jsqlparser版本的项目,后者用于JDK11+版本和迭代升级项目,使用3.5.9版本需要配置依赖该模块

SpringBoot2.x项目

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.9</version>
</dependency>
// `jdk 1.8`引入可选模块
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-jsqlparser-4.9</artifactId>
    <version>3.5.9</version>
</dependency>

SpringBoot3.x项目

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
    <version>3.5.9</version>
</dependency>
// `jdk 11+`引入可选模块
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-jsqlparser</artifactId>
    <version>3.5.9</version>
</dependency>

为了IService接口,可能还需要引入mybatis-plus-spring

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-spring</artifactId>
    <version>3.5.9</version>
</dependency>

为了框架实用性,可能还需要引入mybatis-plus-extension

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-extension</artifactId>
    <version>3.5.9</version>
</dependency>
posted @ 2025-01-05 18:00  明月心~  阅读(4711)  评论(1)    收藏  举报