属性的默认值(如果不存在)

时间:2020-09-25 13:35:35

标签: java spring spring-boot

所以在我的属性文件中,我有类似的东西:

list.of.blacklist=xyz,pop,dum等。如果此属性没有任何值,我希望使用hukd的默认值。这就是我的bean.xml文件中的一个构造函数args中的内容:

<constructor-arg name="listOfBlacklist" value="#{'${list.of.blacklist}:HUKD'.split(',')}"/>

这是从属性文件填充值列表时声明默认值的正确语法吗?

1 个答案:

答案 0 :(得分:0)

您可以通过对正在使用的语法进行一些小的修改来实现此目的,方法是在$ {}中添加默认值,紧随其后的是':',即:

"#{'${list.of.blacklist:HUKD}'.split(',')}"

在花括号中添加默认值,因为此操作分为2个步骤:

  1. a。使用'$ {list.of.blacklist:HUKD}'从属性中获取配置值

    b。如果未找到任何值,则将HUKD的默认值设置为:在卷曲$ {}后的值:

  2. 使用spel用','分隔此值。在步骤1中获得的值基本上被#{'来自步骤1'.split(',')}的值包围