Springboot @Value获取配置文件中的值失效

自动注入失效有以下两种可能

1. 包没有被扫描到

定义一个扫描组件有两种方式:

  1. 如果你正在使用springboot,那么
    • 如果你需要扫描的包的层级,在注有@SpringBootApplication的启动类层级之下。springboot会隐式的扫描这些组件
    • 如果你的beans/components在其他包或者不在main package的子包下,你应该在启动类手动添加@ComponentScan指定
  2. 如果你正在做一个JSP/Servlet或Spring MVC application没有用到springboot

    那么 你会通过XML application context 或者 Java Application Context明确指定组件扫描路径

2. 调用者在某个类中,被使用new创建了实例

如果类A中存在成员属性B, B是通过@Autowired自动注入,而类A的实例是通过new的方式产生的,那么自动注入会失效的。

此时通过Spring的上下文获取所有的Bean的方法来获取B


转载注明出处:www.meidanlong.com 😃

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值