在构造函数上@Autowired时@ConfigurationProperties不工作

时间:2014-12-28 18:57:55

标签: java spring spring-boot

我必须在Bean的构造函数上执行@Autowired以避免遗留系统崩溃。

以下是示例

@Component
public class SampleBean {

@Autowired 
public SampleBean(SampleProperties properties) {
   // use properties 
}
} 

这是SampleProperties

@ConfigurationProperties 
public class SampleProperties {
    public String hostname;
    //Getter / Setter
}

我正在使用SpringBoot

@EnableAutoConfiguration(exclude = {EmbeddedServletContainerAutoConfiguration.EmbeddedJetty.class,
        LiquibaseAutoConfiguration.class})
@ComponentScan@EnableScheduling
@EnableConfigurationProperties({
        SampleProperties.class
})
public class SampleApplication {
    public static void main(String[] args) {
        RioPropertyInitializer.init();
        SpringApplication.run(SampleApplication, args);
    }
}

我们正在使用application.yml文件。这是问题,当我调试时,我可以看到主机名值正在从application.ml中替换,但是当它到达构造函数时,hostname为空。

有什么问题?

0 个答案:

没有答案