您执行属性注入的方式将不起作用,因为注入是在调用构造函数之后完成的。
您需要执行以下操作之一:
更好的解决方案
@Componentpublic class MyBean { private final String prop; @Autowired public MyBean(@Value("${some.prop}") String prop) { this.prop = prop; System.out.println("================== " + prop + "================== "); }}可行的解决方案,但测试性较差,可读性稍差
@Componentpublic class MyBean { @Value("${some.prop}") private String prop; public MyBean() { } @PostConstruct public void init() { System.out.println("================== " + prop + "================== "); }}还要注意,它不是特定于Spring Boot的,而是适用于任何Spring应用程序



