freemarker判断对象是否为空的方法


Posted in Javascript onAugust 13, 2015

FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等。

freemarker中显示某对象使用${name}.

但如果name为null,freemarker就会报错。如果需要判断对象是否为空:

<#if name??>
……
</#if>

当然也可以通过设置默认值${name!''}来避免对象为空的错误。如果name为空,就以默认值(“!”后的字符)显示。 

对象user,name为user的属性的情况,user,name都有可能为空,那么可以写成${(user.name)!''},表示user或者name为null,都显示为空。

判断为空

<#if (user.name)??>
……
</#if>

方法二:

对于null,或者miss value,freemarker会报错

!:default value operator,语法结构为:unsafe_expr!default_expr,比如 ${mouse!"No mouse."} 当mouse不存在时,返回default value;

(product.color)!"red"  这种方式,能够处理product或者color为miss value的情况;

而product.color!"red"将只处理color为miss value的情况

??: Missing value test operator ,测试是否为missing value

unsafe_expr?? :product.color??将只测试color是否为null

(unsafe_expr)??:(product.color)??将测试product和color是否存在null

?exists:旧版本的用法

比如:

<#if mouse??>
 Mouse found
<#else>
 No mouse found
</#if>
Creating mouse...
<#assign mouse = "Jerry">
<#if mouse??>
 Mouse found
<#else>
 No mouse found
</#if>

以上通过两种方法介绍了freemarker判断对象是否为空的方法,希望大家喜欢。

Javascript 相关文章推荐
超强的IE背景图片闪烁(抖动)的解决办法
Sep 09 Javascript
javascript实现完美拖拽效果
May 06 Javascript
Javascript数组Array方法解读
Mar 13 Javascript
利用Javascript仿Excel的数据透视分析功能
Sep 07 Javascript
EasyUI折叠表格层次显示detailview详解及实例
Dec 28 Javascript
JS实现的添加弹出层并完成锁屏操作示例
Apr 07 Javascript
关于angularJs清除浏览器缓存的方法
Nov 28 Javascript
微信小程序表单验证form提交错误提示效果
Jun 19 Javascript
浅谈vue 单文件探索
Sep 05 Javascript
element-ui 的el-button组件中添加自定义颜色和图标的实现方法
Oct 26 Javascript
基于Vue2实现简易的省市区县三级联动组件效果
Nov 05 Javascript
详解webpack的clean-webpack-plugin插件报错
Oct 16 Javascript
数据分析软件之FineReport教程:[5]参数界面JS(全)
Aug 13 #Javascript
在jQuery中使用$而避免跟其它库产生冲突的方法
Aug 13 #Javascript
再JavaScript的jQuery库中编写动画效果的指南
Aug 13 #Javascript
js实现仿网易点击弹出提示同时背景变暗效果
Aug 13 #Javascript
JavaScript生成SQL查询表单的方法
Aug 13 #Javascript
对于jQuery性能的一些优化建议
Aug 13 #Javascript
使用控制台破解百小度一个月只准改一次名字
Aug 13 #Javascript
You might like
咖啡豆要不要放冰箱的原因
2021/03/04 冲泡冲煮
php的sso单点登录实现方法
2015/01/08 PHP
PHP区块查询实现方法分析
2018/05/12 PHP
Laravel框架实现简单的学生信息管理平台案例
2019/05/07 PHP
Referer原理与图片防盗链实现方法详解
2019/07/03 PHP
tp5.1 框架查询表达式用法详解
2020/05/25 PHP
音乐播放用的的几个函数
2006/09/07 Javascript
THREE.JS入门教程(4)创建粒子系统
2013/01/24 Javascript
Jquery中使用setInterval和setTimeout的方法
2013/04/08 Javascript
Jquery实现列表(隔行换色,全选,鼠标滑过当前行)效果实例
2013/06/09 Javascript
如何在node的express中使用socket.io
2014/12/15 Javascript
JavaScript使用shift方法移除素组第一个元素实例分析
2015/04/06 Javascript
简介JavaScript中的setTime()方法的使用
2015/06/11 Javascript
jquery遍历函数siblings()用法实例
2015/12/24 Javascript
ES6数组的扩展详解
2017/04/25 Javascript
[01:03:27]Optic vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python的Django框架中的select_related函数对QuerySet 查询的优化
2015/04/01 Python
Python使用设计模式中的责任链模式与迭代器模式的示例
2016/03/02 Python
Python的装饰器用法学习笔记
2016/06/24 Python
Python处理中文标点符号大集合
2018/05/14 Python
python 实现保存最新的三份文件,其余的都删掉
2019/12/22 Python
python实现梯度下降法
2020/03/24 Python
pandas数据拼接的实现示例
2020/04/16 Python
CSS3动画:5种预载动画效果实例
2017/04/05 HTML / CSS
CSS3+JavaScript实现炫酷呼吸效果的示例代码
2020/06/15 HTML / CSS
西班牙最大的在线滑板和街头服饰商店:Fillow.net
2019/04/15 全球购物
地理科学专业毕业生求职信
2013/10/15 职场文书
中专毕业生自我鉴定
2013/11/21 职场文书
母亲节感恩活动记录
2014/03/16 职场文书
给校长的建议书300字
2014/05/16 职场文书
2014年节能降耗工作总结
2014/12/11 职场文书
股东大会通知
2015/04/24 职场文书
2015年财务科工作总结范文
2015/05/13 职场文书
《成长的天空》读后感3篇
2019/12/06 职场文书
刚学完怎么用Python实现定时任务,转头就跑去撩妹!
2021/06/05 Python
正则表达式基础与常用验证表达式
2022/06/16 Javascript