java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > mapper自动装配识别不了,Could not autowire.No beans of‘UserMapper‘type found

解决mapper自动装配识别不了,Could not autowire.No beans of‘UserMapper‘type found

作者:学习进行时!

文章介绍了在使用MyBatisX插件和MybatisPlus自动生成代码后,如何解决Spring Boot项目中自动注入`UserMapper`时报错的问题,主要方法包括在主配置类或启动类上添加`@MapperScan`注解,指定Mapper文件夹所在的包路径,以及在Mapper类上添加`@Repository`注解

mapper自动装配识别不了,Could not autowire.No beans of‘UserMapper‘type found

利用MyBatisX插件使用MybatisPlus生成代码后,使用自动注入时报错:

Could not autowire. No beans of ‘UserMapper’ type found

原因

Spring没有未找到相应的类

方法一:添加@MapperScan注解

在Spring Boot应用的主配置类或者主启动类上添加@MapperScan(“mapper文件夹所在包”)注解

让Spring能够在相应的包中扫描

@SpringBootApplication
@MapperScan("com.example.Demo.mapper")
public class MiaoshaApplication {

    public static void main(String[] args) {
        SpringApplication.run(MiaoshaApplication.class, args);
    }
}

注:

方法二:添加@Repository

如果方法一使用完无效,这就是idea的问题了,运行是不会报错的,如果想去掉爆红,可以添加忽略提示Suppress,这个idea能Alt+Enter里有自动添加

但是我喜欢在Mapper类上加入@Repository,直接告诉idea识别。

@Repository
public interface UserMapper extends BaseMapper<User> {

}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文