我有这样的课:
public AbstractConfig() {
super(DataConfig.MGR_NAME);
}
在
DataConfig
里面有: public final String MGR_NAME = "theManager";
我发现SpEL文档令人困惑。如果设置了弹簧配置文件,是否可以更改值?也就是说,如果我的配置文件为“AlternateManager”,则使用
theManagerAlt
,否则默认使用theManager
?在编写此标记以获取 Activity 配置文件时,我希望可以使用下面的语法来实现此目的:
@Value("#PROFILE['AlternateManager'] ? 'theManagerAlt' : 'theManager' ")
public final String MGR_NAME;
最佳答案
解答:
经过大量的搜寻和游玩,终于找到了。希望这对其他人有用!这有效:
@Value("#{environment.acceptsProfiles('AlternateManager') ? 'theManagerAlt' : 'theManager' }")
String
不能是final
,但是我可以接受。对我来说似乎很遗憾,这没有得到很好的记录。
这张旧票:https://jira.spring.io/browse/SPR-9037将我链接到一个旧的SO问题,该问题给了我答案。
该票证本质上是要求提供更好的文档。
IMO,每个人都应该为那张6岁的OPEN票投票。