弹簧默认配置文件始终有效吗?

时间:2016-04-06 09:42:22

标签: spring profile

我想知道是否始终应用spring默认配置文件,假设其属性未被其他活动配置文件覆盖?

e.g。我定义的属性仅与默认配置文件相关。我希望在激活任何其他配置文件时忽略这些属性,这些属性不会被其他配置文件覆盖,只有在其他配置文件处于活动状态时才会应用。

从我的测试来看,当我激活另一个弹簧配置文件时,似乎仍然会拾取这些属性。我在spring应用程序属性文件中定义了这些属性。

我还使用@Profile("default")注释定义了一个Bean,并且在激活另一个配置文件时不调用Bean。但我在application.xml spring.profiles: default下定义的属性正在应用。

1 个答案:

答案 0 :(得分:0)

检查此解决方案here。 你必须根据配置文件定义2个bean,以便保存对不同properties.file的引用。在你的情况下,第一个(默认)将具有默认值,在第二个中你可以简单地覆盖它们或让变量上的任何其他默认值