一、添加mybatis-plus依赖、删除mybatis依赖,我用的是ruoyi 3.8.5,主pom里面已经没有了mybatis的依赖,如果有的话注释一下
<!--<dependency>
<groupId>org.mybatis.spring.boot.starter</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis.version}</version>
</dependency>-->
这里添加mybatisplus依赖
<pagehelper.boot.version>1.4.6</pagehelper.boot.version>
<mybatis-plus.version>3.5.2</mybatis-plus.version>
<!--mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis-plus.version}</version>
</dependency>
<!-- pagehelper 分页插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>${pagehelper.boot.version}</version>
<exclusions>
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</exclusion>
</exclusions>
</dependency>
注意:一定要做mybatis依赖的移除,否则pagehelper还是依赖mybatis会与plus冲突,报错。
ruoyi-common下的pom.xml添加依赖
<!--mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
</dependency>
<!-- pagehelper 分页插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
</dependency>
解释一下为什么要在这里再次添加mybatis-plus依赖。根目录的依赖是放到了dependencyManagement标签里了,是声明,并没有真正引用,当子模块用到了相应的依赖时需要在自己的pom里再引用进来,此时不用写版本号,因为声明时已规定好了。现在common模块需要引用mymatis-plus,所以需要在这里添加进来。那为什么之前使用mybatis的时候这个pom里没有引用mybatis的依赖呢?是因为common模块还引用了分页插件,还记得上一步时我移除了分页插件中的mybatis依赖吗?因为分页插件本身依赖了mybatis,所以之前common可以不引用mybatis,但是现在mybatis已被移除,所以必须重新引入mybatis-plus,否则代码会报错。若依单模块版本就不会出现这个问题。
修改配置文件
ruoyi-admin下src\main\resources\application.yml,注释mybatis的配置,新增plus的配置,这段配置我是从若依官方拷贝过来的,如果跟你实际不一样就修改一下
## MyBatis配置
#mybatis:
# # 搜索指定包别名
# typeAliasesPackage: com.ruoyi.**.domain
# # 配置mapper的扫描,找到所有的mapper.xml映射文件
# mapperLocations: classpath*:mapper/**/*Mapper.xml
# # 加载全局的配置文件
# configLocation: classpath:mybatis/mybatis-config.xml
# MyBatis Plus配置
mybatis-plus:
# 搜索指定包别名
typeAliasesPackage: com.ruoyi.**.domain
# 配置mapper的扫描,找到所有的mapper.xml映射文件
mapperLocations: classpath*:mapper/**/*Mapper.xml
# 加载全局的配置文件
configLocation: classpath:mybatis/mybatis-config.xml
修改MyBatisConfig
这个类中有一段手工构建SqlSessionFactory的代码,直接注释掉,因为yml文件中的配置是可以自动构建的。 倒也不是mybatis-plus不能用手工构建的方式,只不过需要将代码中的SqlSessionFactoryBean换成MybatisSqlSessionFactoryBean。但是既然能自动构建,那用手工的方式感觉真没必要,索性直接注释掉。
启动项目:启动项目出现mybatis-plus的标志,并且不报错,说明升级成功,在不影响原有功能的情况下,已经将mybatis升级到了mybatis-plus,在写新功能的时候可以愉快的使用plus了,旧功能建议保持原样,如果想要将旧功能也改造成plus版的,需要做不少改动,但是并不困难,只是有些繁琐,强迫症患者可以做一下。
祝大家都能成功切换!有问题留言咱们一块讨论
版权归原作者 leonnew 所有, 如有侵权,请联系我们删除。