如何null
在Freemarker中处理值?当null
数据中存在值时,模板中会出现一些异常。
Answers:
您可以使用??
测试运算符:
这将检查对象的属性是否不为null:
<#if object.attribute??></#if>
这检查对象或属性是否不为空:
<#if (object.attribute)??></#if>
资料来源:FreeMarker手册
has_content
在null检查旁边,还会检查该值是否不为空。这适用于字符串,序列,哈希或集合。如果对象是日期,布尔值或数字,则它将作为非空对象。对于所有其他类型,它将作为空。
从freemarker 2.3.7开始,您可以使用以下语法:
${(object.attribute)!}
或者,如果您想在属性为时显示默认文本null
:
${(object.attribute)!"default text"}
<dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId><version>2.3.22</version></dependency>
到pom.xml后可以使用。
${(object.dateAcquired?date)!"not present"}
${salutation!'Dear Mr. or Mrs.'}
我认为这是另一回事
<#if object.attribute??>
Do whatever you want....
</#if>
如果object.attribute
不是NOT NULL,则将打印内容。