java – Spring @Value(“${}”)经常为null

我正在使用Spring Boot应用程序.在某些@Component类中,加载@Value字段,而不是在其他类上,它们始终为null.

似乎在创建@ Bean / @组件后加载了@Value.

我需要从@Bean中的属性文件加载一些值.

你有什么建议吗?

在构造bean(执行构造函数)之后注入属性(以及所有bean依赖项).

如果需要,可以使用构造函数注入.

@Component
public class SomeBean {
    private String prop;
    @Autowired
    public SomeBean(@Value("${some.prop}") String prop) {
        this.prop = prop;
        //use it here
    }
}

另一种选择是在使用@PostConstruct注释的方法中移动构造函数逻辑,它将在创建bean之后执行,并且所有它的依赖项和属性值都将被解析.

翻译自:https://stackoverflow.com/questions/28636060/spring-value-often-null

转载注明原文:java – Spring @Value(“${}”)经常为null