首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Spring如何知道引用哪个属性文件来获取用@Value注释的变量的值?

Spring如何知道引用哪个属性文件来获取用@Value注释的变量的值?
EN

Stack Overflow用户
提问于 2018-07-05 21:32:33
回答 1查看 1.1K关注 0票数 0

如果我们的应用程序中有多个属性文件,并且这两个文件都设置了不同值的变量,该怎么办?

我们通常只像下面这样注入值,它总是设法从属性文件中获得值。多么?

代码语言:javascript
复制
@Configuration
public class AppConfig {    
    @Value("${spring.datasource.url}")
    private String datasourceUrl;
EN

回答 1

Stack Overflow用户

发布于 2018-07-05 21:44:09

Spring读取的最后一个文件中的值将覆盖所有以前读取的值。如果您自己定义读取文件的顺序(例如,通过配置),则您可以完全控制它。看看下面的例子:

基于注释的配置:

代码语言:javascript
复制
@Configuration
@PropertySource({"classpath:foo.properties", "classpath:bar.properties"})
public class PropertiesWithJavaConfig {
//...
}

基于XML的配置:

代码语言:javascript
复制
<context:property-placeholder location="classpath:foo.properties,classpath:bar.properties"/>

如果bar.properties包含也在foo.properties中定义的属性,则bar.properties中的值将覆盖foo.properties中的值。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51192682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档