gpt4 book ai didi

java - Spring boot PropertySourcesPlaceHolderConfigurer 与 @ProperySource

转载 作者:太空宇宙 更新时间:2023-11-04 10:35:16 27 4
gpt4 key购买 nike

我有一个关于 PropertySourcesPlaceholderConfigurer@PropertySource 注释的简单问题。我有简单的 bean 类类(class)。我想从 application.properties 和另一个带有 @Value 注释的 test.properties 注入(inject)属性。我在多个来源中读到@PropertySource 需要定义静态PropertySourcesPlaceholderConfigurer bean。来自文档:

In order to resolve ${...} placeholders in definitions or @Value annotations using properties from a PropertySource, one must register a PropertySourcesPlaceholderConfigurer. This happens automatically when using in XML, but must be explicitly registered using a static @Bean method when using @Configuration classes.

但对我来说,没有这个 bean 也能正常工作。 Spring是否以某种方式在应用程序启动时自动配置PropertySourcesPlaceholderConfigurer?这是我的简单示例(第一个属性来自 application.properties,第二个属性来自 test.properties):

@Configuration
@PropertySource("classpath:test.properties")
public class AppConfiguration {

@Value("${first.property}")
private String firstProp;

@Value("${second.property}")
private String secondProp;

@Bean
public TestModel getModel() {
TestModel model = new TestModel();
model.setFirstProperty(firstProp);
model.setSecondProperty(secondProp);
return model;
}
}

最佳答案

静态 PropertySourcesPlaceholderConfigurer bean 会在 Spring Boot 中引入的 PropertyPlaceholderAutoConfiguration 类缺失时自动注册 1.5.0.RELEASE (因为在以前的版本中没有在线 javadoc)。

有趣的是,Spring Boot 1.5 Release Notes 中没有提到这个新的自动配置。 .

关于java - Spring boot PropertySourcesPlaceHolderConfigurer 与 @ProperySource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49561053/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com