Spring @ Value默认值为String []

Spring @ Value默认值为String []

问题描述:

我想知道如何为String []设置默认值。Spring @ Value默认值为String []

@Value("${blacklist}") 
private String[] blacklist; 

在运行时,该列表通过我的application.yml填充。在测试用例中,它是null,我不会为每个测试用例设置任何值。 此外,如果application.yml中没有条目,它必须是一个空数组。

用法:

for (String varToRemove : blacklist) { 
     vars.remove(varToRemove); 
} 

PLS像 “为什么你不只是空检查吗?” 没有答案。我想知道如何设置默认值:)

我是如此集中,我忘了最简单的方式诠释(和它的作品):

@Value("${blacklist:}") 
private String[] blacklist= new String[0]; 

像这样的东西应该工作:

@Value("#{blacklist ?: '1,2,3'}") 

来自https://www.mkyong.com/spring3/spring-value-default-value/

+0

发现此页面,但没有为我工作。但看,我找到了答案! – Waize

+0

你有一个名为“黑名单”的酒店吗?你的课是春季组件/服务吗? – Kiru

+0

是的,我有这个属性。我发现了解决方案。请看下面的答案。 – Waize