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>

 

posted @ 2023-03-21 16:17  lksses  阅读(746)  评论(0编辑  收藏  举报