使用參考:http://freemarker.foofun.cn/toc.html
需求:提取一些必要的字段資訊寫入到固定的word模版中。
1、freemarker中周遊集合
①周遊list集合
<#list mylist as obj>
${obj.name}
</#list>
②周遊map集合
<#list myMap?keys as key>
${key} ${myMap[key]}
</#list>
2、判斷字元串非空
<#if key??>
myMap[key]
<#else>
空
</#if>
3、周遊的索引
使用:"别名_index"的形式擷取索引
<#list myList as obj>
${obj_index}
</#list>
4、html中textarea送出的内容換行符轉換
注意:如果不轉換,則word會識别為空格符
freemarker中的換行符為:<w:br />
在建構資料模型的時候使用替換的方式将"\n"替換為“<w:br />”
private String replaceEnter(String str) {
String reStr = "<w:br />";
if (StringUtils.isNotBlank(str)) {
str = str.replaceAll("\n", reStr);
}
return str;
}
5、對于html特殊字元,例如<、>等,轉義方式為${str?html}
6、對應js特殊字元串,如\n、" 等(\n會顯示成一個空格),轉義方式為${str?js_string}
以上為本次學習使用過程中遇到的一些小問題,需解決的知識。
2018年8月30日