开发者

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

目录
  • mapper自动装配识别不了,Could not autowire.No beans of‘UserMapper‘type found
    • 原因
    • 方法一:添加@MapperScan注解
    • 方法二:添加@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) {
            SpringApjsplhttp://www.devze.comication.run(MiaoshaApplication.class, args);
        }
    }

    注:

    • 首先确保路径没问题
    • mapper文件无论在开发路径还是traget导出路径都是"com.exampl编程e.Demo.mapper"的路径

    方法二:添加@Repository

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

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

    @Repository
    public interface UserMapper extends BaseMapper<User> {
    
    }

    总结

    以上为个人经验,希望能给大家一个参考,js也希望大家多多支持编程客栈(www.devze.com)。

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新开发

    开发排行榜