SpringBoot整合MyBatis。service导入使用@Mapper注解的mapper报错:Could not autowire. No beans of xxxMapper...

IDEA:使用的版本是2018.3
首先肯定这是IDEA本身的问题,程序是可以运行的。。
这是DAO使用@Mapper注解的接口!
SpringBoot整合MyBatis。service导入使用@Mapper注解的mapper报错:Could not autowire. No beans of xxxMapper..._第1张图片
这是service使用了@Autowired自动注入
SpringBoot整合MyBatis。service导入使用@Mapper注解的mapper报错:Could not autowire. No beans of xxxMapper..._第2张图片
这是启动类,扫描mapper接口的包
SpringBoot整合MyBatis。service导入使用@Mapper注解的mapper报错:Could not autowire. No beans of xxxMapper..._第3张图片
第一种解决方法:把@Autowired换成@Resource
SpringBoot整合MyBatis。service导入使用@Mapper注解的mapper报错:Could not autowire. No beans of xxxMapper..._第4张图片
第二种解决方法:把@Mapper换成@Repository。同时在启动类中扫描mapper包的注解@MapperScan(basePackages = “com.it.springboot.mapper”)替换成@MapperScan(basePackages = “com.it.springboot.mapper”,annotationClass = Repository.class)
在这里插入图片描述
再使用@Autowired就不报红了
SpringBoot整合MyBatis。service导入使用@Mapper注解的mapper报错:Could not autowire. No beans of xxxMapper..._第5张图片
这里就需要查看一下@Autowired和@Resource的区别。
添加链接描述

以及@Mapper和@Repository的区别(转载别人的)
添加链接描述

你可能感兴趣的:(spring,boot,java,mybatis)