freemarker中表达式 ${(user.name)!""}当user为空时的报错解决

freemarker中表达式 ${(user.name)!""}当user为空时的报错解决

 

FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出,用FreeMarker判断对象是否为空的方法。

  1. 一般数据在后端判断, 前端不管逻辑只管显示。

  2. freemarker中显示某对象使用${name}.
    但如果name为null,freemarker就会报错。如果需要判断对象是否为空:<#if name??>……</#if>。当然也可以通过设置默认值${name!""}来避免对象为空的错误。如果name为空,就以默认值(“!”后的字符)显示。

  3. 对象user,name为user的属性,这时user,name都有可能为空,可以写成${(user.name)!""},表示user或者name为null,都显示为空。

 

同意楼上的解释,代码这样改就可以了:
<#if user??>
${(user.name)!""}

</#if>
posted @ 2021-12-09 10:14  前端白雪  阅读(416)  评论(0编辑  收藏  举报