一.new 出的对象,无法调用@Autowired进入的spring bean,所以在new出来的对象中调用@Autowired会发现是空,报空指针错误。
(参考https://www.iteye.com/blog/ximeng1234-2233705)
二.@Autowired在自动装载时,如果定义是一个接口(如下的testInterface):
1.若该接口没有类实现,则报错。
2.若该接口有一个类实现,则自动生产该类,即a的类型是实现该接口的类。
3.若该接口有多个类实现,使用@Qualifier(value = “userService2”)
(参考https://blog.youkuaiyun.com/qq_18800269/article/details/89498887)

三、类的非static变量不可以在static的函数中直接使用(之前一直以为是和springMVC有关,后来才发现是基本语法出错了,汗)
四、项目出现了Error creating bean with name ‘XXX’: Injection of autowired dependencies的问题,经排查发现,在springmvc的配置文件中,没有扫描bean包
五、11/20更新:在代码中发现,存在@Autowired的接口,且该接口没有被类实现,后台检查发现该接口在spring中生成了代理实现。


本文解析了Spring框架中依赖注入的常见问题,包括@Autowired注解在new对象中的失效原因,接口实现自动装配的条件及多实现时的解决办法,以及Spring MVC配置中bean包扫描的重要性。

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



