SpringBoot趟过的坑之
IDEA使用@Autowired注入飘红
问题描述:
我使用SpringBoot构建一个后台管理项目,在Controller层
使用@Autowired注解EmployeeDAO的对象,直接飘红

编译报的错误如下
Field employeeDao in com.chensr.springboot05managersystem.
controller.
EmployeeController
required a bean of type 'com.chensr.springboot05managersystem.
dao.EmployeeDao' that could not be found.
这个问题查了很久,网上各种什么改编译器的error为warning之类的方法都用上了,没有效果
实际上这就是SpringBoot自动扫描没有完全扫描到的问题
SrpingBoot应该自动把启动类所在路径下的所有类、包都扫描进来,如图:

本来应该将所有com.chensr.springboot05managersystem下的包、类都自动扫描的,但是它事实上没有成功
解决办法:
在启动类处,增加一个注解
@ComponentScan({"com.chensr.springboot05managersystem.dao"})
让springboot扫描这个路径下的类、方法
即可解决问题

本文讲述了在SpringBoot项目中遇到的@Autowired注解注入失败问题,分析了原因——自动扫描范围不足,并提供了在启动类添加@ComponentScan注解来解决此问题的方法。
3110

被折叠的 条评论
为什么被折叠?



