最近在使用freemarker 导出 word,因为之前没使用过freemarker 对其不了,以致于出现不少问题,比较典型的一个就是freemarker不能容忍引用不存在的变量,如${property},若是property 不存在时就会报错。如下是我在网上查阅到的一些解决方法:java
一、??判断是否不为空,好比:<#if property??></#if>变量
二、在变量名后加上!“默认值” 用来防止变量名不存在或者变量名值为null的状况下,不会报错并给它一个默认值,好比:hello,{world!"java"}!,若是world这个变量不存在,则最后打印出来的信息是hello,你java!引用
三、多级访问变量!“默认值” 写法:(最好把全部变量用括号包起来,而后外面加上!“默认值”)方法