【发布时间】:2020-12-14 02:46:28
【问题描述】:
我知道你可以像这样使用@Value 注解注入环境变量
@Value("#{systemEnvironment['AWS_ENV']}")
private String envTarget;
如果我使用的是 Spring 注释,我可以将环境变量内联注入字符串值吗?例如这样的:
@PropertySource("classpath:secrets-${#{systemEnvironment['AWS_ENV']}.properties")
显然上述方法不起作用,因为它试图将 systemEnvironment['AWS_ENV'] 解析为 jvm 属性。有人有什么想法吗?
【问题讨论】:
-
查看 Spring 配置文件,或者拥有一个 aws.properties 文件并将占位符移动到属性文件内。
-
您可以从属性文件中引用系统环境变量吗?我不确定这是否会起作用,因为我首先使用 PropertySource 注释来加载属性文件