mybatis升级mybatis-plus,并存

升级办法:

1)新增mp依赖

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

2)排除、处理冲突包

3)启动项目,修改实体类和DAO,如果启动项目报错:

  • 配置扫描路径
// 指定要扫描的Mapper类的包的路径
@MapperScan(basePackages = {"com.abc.**.mapper", "com.baomidou.mybatisplus.core.mapper"})
Caused by: java.lang.ClassNotFoundException: Cannot find class: SysRole

SysRole指xml文件里的实体类名:
在这里插入图片描述
配置映射文件:
在这里插入图片描述
但是,因为包名问题,配置文件没有映射到,
解决办法:1)将包名配置改为通配符:

typeAliasesPackage: com.abc.system.**.domain

2)下下策,替换为全称:
在这里插入图片描述

4)启动成功:

5)一个接口,两个实现,一个mybatis实现,另一个是mybatis-plus实现

将服务层和Controller改为:

// mybatis-plus
@Service("mp")
public class TestAreaImplMybatisPlus extends ServiceImpl<TestAreaMapper, TestAreaDO> implements ITestAreaService {
// Controller 注入服务
	@Resource(name = "mp")
    private ITestAreaService testAreaService;
  • 如果有问题,欢迎留言~

猜你喜欢

转载自blog.csdn.net/cc007cc009/article/details/106635635