如何在 Spring applicationContext 中读取系统环境变量

2022-01-15 00:00:00 environment-variables spring java

如何在应用上下文中读取系统环境变量?

How to read the system environment variable in the application context?

我想要类似的东西:

<util:properties id="dbProperties"
        location="classpath:config_DEV/db.properties" />

<util:properties id="dbProperties"
        location="classpath:config_QA/db.properties" />

取决于环境.

我的应用程序上下文中可以有这样的东西吗?

Can I have something like this in my application Context?

<util:properties id="dbProperties"
        location="classpath:config_${systemProperties.env}/db.properties" />

根据系统环境变量设置实际值

where the actual val is set based on the SYSTEM ENVIRONMENT VARIABLE

我正在使用 Spring 3.0

I'm using Spring 3.0

推荐答案

查看这篇文章.它通过 PropertyPlaceholderConfigurer 支持外部属性(通过 systemPropertiesMode 属性).

Check this article. It gives you several ways to do this, via the PropertyPlaceholderConfigurer which supports external properties (via the systemPropertiesMode property).

相关文章