如何使用Spring 3.2.3 JavaConfig读取环境变量?

时间:2013-09-04 11:28:30

标签: java spring

我正在尝试在我的应用程序中使用Spring 3.2.3发布JavaConfig,我需要读取环境变量的值。

我已阅读JavaConfig 1.0.0.M4 documentation,这似乎正是我所需要的,但无法找到如何导入或解析引用的@EnvironmentValueSource@ExternalValue注释。

有人可以告诉我该怎么做吗?感谢。

2 个答案:

答案 0 :(得分:1)

您应该能够将@Value注释与SpEL表达式一起使用,以从systemEnvironment属性对象中检索环境变量,例如:

@Value("#{ systemEnvironment['MY_PROPERTY'] }")
private String myProperty;

如果您需要系统属性,请改用systemProperties['MY_PROPERTY']

此外,您应该查看的文档是here - 您链接的内容已经过时了。

答案 1 :(得分:0)

您可以使用Springs EnvironmentAware界面:

public class ClazzWithEnvironmentInfo implements EnvironmentAware{

    private Environment environment;

    private String getSomeProperty(){
        return environment.getProperty("SOME_ENV_PROPERTTY");
    }

    @Override
    public void setEnvironment(Environment environment) {
        this.environment = environment;
    }
}