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 相关文章推荐
Javascript中eval函数的使用方法与示例
Apr 09 Javascript
jQuery和AngularJS的区别浅析
Jan 29 Javascript
js贪吃蛇网页版游戏特效代码分享(挑战十关)
Aug 24 Javascript
JavaScript实现算术平方根算法-代码超简单
Sep 11 Javascript
JavaScript实现自动生成网页元素功能(按钮、文本等)
Nov 21 Javascript
Bootstrap页面布局基础知识全面解析
Jun 13 Javascript
遍历js中对象的属性和值的实例
Nov 21 Javascript
浅谈jquery拼接字符串效率比较高的方法
Feb 22 Javascript
jQuery Validate表单验证插件实现代码
Jun 08 jQuery
微信小程序实践之动态控制组件的显示/隐藏功能
Jul 18 Javascript
解决vue动态为数据添加新属性遇到的问题
Sep 18 Javascript
JavaScript在web自动化测试中的作用示例详解
Aug 25 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
PHP中的日期及时间
2006/11/23 PHP
MySQL修改密码方法总结
2008/03/25 PHP
用mysql_fetch_array()获取当前行数据的方法详解
2013/06/05 PHP
PHP $_FILES中error返回值详解
2014/01/30 PHP
js 键盘记录实现(兼容FireFox和IE)
2010/02/07 Javascript
jquery的Theme和Theme Switcher使用小结
2010/09/08 Javascript
jQuery操作 input type=checkbox的实现代码
2012/06/14 Javascript
poshytip 基于jquery的 插件 主要用于显示微博人的图像和鼠标提示等
2012/10/12 Javascript
Javascript中产生固定结果的函数优化技巧
2013/01/16 Javascript
解析JavaScript中点号“.”的多义性
2013/12/02 Javascript
jquery操作checkbox示例分享
2014/07/21 Javascript
JS制作手机端自适应缩放显示
2015/06/11 Javascript
JS选中checkbox后获取table内一行TD所有数据的方法
2015/07/01 Javascript
Javascript类型转换的规则实例解析
2016/02/23 Javascript
JS 实现 ajax 异步浏览器兼容问题
2017/01/21 Javascript
jQuery实现的简单拖动层示例
2017/02/22 Javascript
JavaScript实现二叉树定义、遍历及查找的方法详解
2017/12/20 Javascript
Vue-Router基础学习笔记(小结)
2018/10/15 Javascript
在vue中对数组值变化的监听与重新响应渲染操作
2020/07/17 Javascript
[28:42]Ti4正赛VG vs NEWBEE1
2014/07/19 DOTA
[00:32]2018DOTA2亚洲邀请赛出场——VP
2018/04/04 DOTA
python实现从字典中删除元素的方法
2015/05/04 Python
Python配置mysql的教程(推荐)
2017/10/13 Python
Python使用pickle模块存储数据报错解决示例代码
2018/01/26 Python
Python中__slots__属性介绍与基本使用方法
2018/09/05 Python
Python列表对象实现原理详解
2019/07/01 Python
Python爬虫之Selenium实现关闭浏览器
2020/12/04 Python
HTML5组件Canvas实现图像灰度化(步骤+实例效果)
2013/04/22 HTML / CSS
客服实习的个人自我鉴定
2013/10/20 职场文书
公司同意接收函
2014/01/13 职场文书
医学院毕业生自荐信范文
2014/03/06 职场文书
音乐教育专业自荐信
2014/09/18 职场文书
财政局党的群众路线教育实践活动整改方案
2014/09/21 职场文书
教师个人总结范文
2015/02/11 职场文书
大学生旷课检讨书1000字
2015/02/19 职场文书
结婚喜宴祝酒词
2015/08/10 职场文书