是的,你可以這樣做。試試這個吧 -
讓我們假設你有一個列表itemList
,它有引號中的文本。
List<String> itemList = new ArrayList<>();
itemList.add("\"item1\""); //item1 in quotes
itemList.add("\"\""); //no text, just quotes
itemList.add("\"item2\""); //item2 in quotes
現在,將此itemList添加到velocity上下文中,並將StringUtils對象也添加到上下文中。
context.put("itemList", itemList);
context.put("stringUtils", new org.apache.commons.lang.StringUtils());
現在,在Velocity模板,你可以原樣StringUtils
類
#foreach($item in $itemList)
#if($stringUtils.length($item) > 2)
$item //print item if text is not empty
#else
//print nothing if text is empty.
#end
#end
length()
方法來顯示文本被用來檢查項目的大小。
如果文本不爲空,則大小將大於2.(引號大小+文本大小)。
如果文本爲空,其大小將恰好爲2(引號的大小)。
輸出
「物品1」 //打印文本,如果不爲空項。
//如果文本爲空,則不打印任何內容。
「item2」//如果文本不爲空,則打印項目。
希望它有幫助!讓我知道任何澄清。
您提供的代碼是否工作?它會給出錯誤嗎? – Turtle
此時刪除if else添加後,模板工作正常。 –