2012-12-11 165 views
7

如果未指定屬性,是否可以注入空或空字符串作爲將在彈簧文件中使用的默認值?目前,我有最好的是注入空或空字符串作爲屬性的默認值

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

解析爲""代碼

+1

我覺得只是'< constructor-arg value =「」/>'應該可以工作。如果你需要索引,你可以添加它。也許我沒有得到你的問題嗎? –

+0

將始終發送一個空字符串。只有在關聯的屬性文件中沒有指定空字符串時,我纔對空字符串感興趣。請參閱http://stackoverflow.com/a/2534949/222867 – qwerty

回答

7

您是否嘗試過使用SpEL?事情是這樣的,也許:

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

更新

我只記得有一個更簡單的方法(如描述很好here)。嘗試:

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

,如果你使用的是在源註釋這將這樣的伎倆:

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

空,貓王對我的作品......

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