0

在我的 Spring 项目中,我使用的是在 Spring 中开发的依赖项项目。这个依赖有它自己的属性文件,并且定义了一个指向localhost. 现在在我的设置中,我希望这个属性指向另一个 URL,而不是 localhost。我正在尝试使用addFirst属性源的方法在我的属性文件中覆盖它,但依赖项仍会加载原始属性值。

ConfigurableEnvironment environment = applicationContext.getEnvironment();
//here i overload the props
environment.getPropertySources().addFirst(
                new ResourcePropertySource("classpath:conf/app.properties")); 
LOG.debug("dependency property: " + applicationContext.getEnvironment().
getProperty("server.hostname")); // here it prints the overloaded value in app.properties

当我打印重载的属性时,我得到了重载的属性值,但是当程序被执行时,它指向 localhost。这是覆盖依赖属性的方法吗?春季版是3.2

4

1 回答 1

0

关键是,在 ProperySources 中,最后一个获胜。

(就像在数据库中一样,最后一个写入的获胜)。

尝试简单地使用add

于 2013-07-12T06:46:27.473 回答