注入null或空字符串作为属性的默认值

时间:2012-12-11 09:28:14

标签: spring

如果未指定属性,是否可以将空字符串或空字符串作为弹出文件中使用的默认值?目前我所拥有的最好的是

<constructor-arg index="1" value="@{data.url:&quot;&quot;}"/>

在代码中解析为""

3 个答案:

答案 0 :(得分:10)

您是否尝试过使用SpEL?这样的事情可能是:

<constructor-arg index="1" value="#{'${data.url}'==null?'':'${data.url}'}"/>

<强>更新

我只记得那是一种更简单的方法(正如所描述的那样here)。尝试:

<constructor-arg index="1" value="${data.url:''}"/>

答案 1 :(得分:10)

如果您在源代码中使用注释,这将起到作用:

@Value("${data.url:#{null}}")
private String dataUrl;

答案 2 :(得分:6)

Empty-Elvis适合我...

@Value("${http.proxyHost?:}")
public String proxyHost = null;