FreeMaker 判断 null,空字符串,空列表数组

本文介绍怎样在 Freemarker 中判断 null,判断空字符串,判断空数组或列表。

判断对象是否为空(null)

在 Freemarker 中,如果使用的对象为 null,freemarker 模板解析就会报错。此时可以使用两个问号(??)判断对象是否为空,例如:

<ul>
    <!-- 判断 pageUrl 是否为空,如果不为空,则创建 <li> 标签 -->
    <#if pageUrl??>
    <li>
        <a href="${pageUrl}">测试页面</a>
    </li>
    </#if>
</ul>

判断 List 是否为空

判断 List 是否为空,即 List 中是否存在元素,可以使用 ?size 运算符,例如:

<#if orgList?? && (orgList?size > 0) > 
    <ul>
        <#for orgList as org>
            <li>${org.name?default("-")}</li>
        </#for>
    </ul>
</#if>

上面代码中,先判断 orgList 是否为 null,然后判断 orgList 是否有元素,如果有,则利用 for 循环渲染列表(数组判断方式类似)。

判断 Map 是否为空

用 freemarker 取出 map 值后,判断该值是否等于某一字符串,可以使用内建函数 ?string 来进行判断。例如:

<#if Data.get(key)?exists>
    <#if Data.get(key)?string !="null">${Data.get(key)}</#if>
</#if>

上述代码中,先判断 key 是否存在,如果存在,继续判断 key 取值不等于 null 字符串,则显示该值。

空字符串判断

freemarker 中判断字符串为空,直接使用 != 运算符即可,例如:

<#if uploadUrl??  && uploadUrl != "">
    <a href="${updateUrl}">更新数据</a>
</#if>
睡眠和休息丧失了时间,却取得了明天工作的精力。 —— 毛泽东
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号