首页
消防安全隐患排查和验收
域名转发系统
祺平订单系统
您所在的位置:首页 > Java > 正文

SpringBoot 中@Autowired 注入失效原因及解决方法

521

1、原因分析

1.1 包没有被扫描到

      通过@Autowired注入的类所在的包路径不在Application启动类所在的包/子包路径下。

      Spring Boot项目的Bean装配默认规则是根据Application类(指项目入口类)所在的包位置从上往下扫描。

      eg: Application启动类在包com.alibaba.taobao下,则只会扫描com.alibaba.taobao包及其所有子包,如果需要自动装载的类所在包不在com.alibaba.taobao及其子包下,而是在com.alibaba.tmall下,则不会被扫描,自然就没法被注入!


1.2 代码中使用new关键字创建实例

      若类A中包含成员属性B, B是通过@Autowired自动注入,而类A的实例是通过new的方式产生,则自动注入会失效的。

————————————————

版权声明:本文为CSDN博主「zhg_vincent」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/Vincent2014Linux/article/details/88897805


本文网址:http://www.14study.cn/show.asp?id=175

若本文章侵犯了您的著作权,请联系我删除 QQ:695898855

更多>>网友评论
发表评论