FreeMarker空值处理
两种方法
一、<#if></if> 判断是否为空
例子:
FTL文件代码
<#-- 空值处理 判断某值为空用 ?? 存在变量返回true -->
<#if stus ??>
<#list stus as stu >
<tr>
<td>${stu_index + 1}</td>
<td>${stu.name}</td>
<td>${stu.age}</td>
<td <#if stu.money gt 300 >style="background: cornflowerblue" </#if>>${stu.money}</td>
<#-- <td>${stu.birthday}</td>-->
</tr>
</#list>
</#if>
二、缺失变量默认值使用 “!” 使用!要以指定一个默认值,当变量为空时显示默认值。 ---------一般用于基本变量值判断
例:
${name!''}表示如果name为空显示空字符串。
如果是嵌套对象则建议使用()括起来。
${(stu.bestFriend.name)!''}表示,如果stu或bestFriend或name为空默认显示空字符串。
代码例
<br> <#--姓名:${stuMap['stu1'].name}<br/> 年龄:${stuMap['stu1'].age}<br/>--> <#-- (判断为空的值)!'' ''中的内容为()中值为空时显示 --> 姓名:${(stuMap.stu1.name)!''}<br/> 年龄:${(stuMap.stu1.age)!''}<br/> <br>
难产难产难产