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 获取select下拉列表值的代码
Sep 07 Javascript
Javascript匿名函数的一种应用 代码封装
Jun 27 Javascript
javascript hasFocus使用实例
Jun 29 Javascript
JS高级笔记
Jul 13 Javascript
JavaScript数组函数unshift、shift、pop、push使用实例
Aug 27 Javascript
JS实现淘宝支付宝网站的控制台菜单效果
Sep 28 Javascript
Angularjs实现多个页面共享数据的方式
Mar 29 Javascript
Atitit.js的键盘按键事件捆绑and事件调度
Apr 01 Javascript
jQuery 常用代码集锦(必看篇)
May 16 Javascript
JavaScript数组操作详解
Feb 04 Javascript
vue.js中实现登录控制的方法示例
Apr 23 Javascript
详解Vue的钩子函数(路由导航守卫、keep-alive、生命周期钩子)
Jul 24 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编程开发怎么提高编程效率 提高PHP编程技术
2015/11/09 PHP
php中static和const关键字用法分析
2016/12/07 PHP
Yii2实现自定义独立验证器的方法
2017/05/05 PHP
基于JQuery实现的类似购物商城的购物车
2011/12/06 Javascript
jquery入门—编写一个导航条(可伸缩)
2013/01/07 Javascript
原生javaScript做得动态表格(注释写的很清楚)
2013/12/29 Javascript
红米手机抢购的js代码
2014/03/10 Javascript
JavaScript保存并运算页面中数字类型变量的写法
2015/07/06 Javascript
JavaScript实现横向滑出的多级菜单效果
2015/10/09 Javascript
JavaScript常用函数工具集:lao-utils
2016/03/01 Javascript
JQuery.validate在ie8下不支持的快速解决方法
2016/05/18 Javascript
JS判断form内所有表单是否为空的简单实例
2016/09/09 Javascript
详解JS对象封装的常用方式
2016/12/30 Javascript
bootstrap IE8 兼容性处理
2017/03/22 Javascript
自制简易打赏功能的实例
2017/09/02 Javascript
vue中如何使用ztree
2018/02/06 Javascript
angular中两种表单的区别(响应式和模板驱动表单)
2018/12/06 Javascript
浅谈目前可以使用ES10的5个新特性
2019/06/25 Javascript
vue分页器组件编写方法详解
2019/06/28 Javascript
详解vue页面首次加载缓慢原因及解决方案
2019/11/06 Javascript
vue实现鼠标移过出现下拉二级菜单功能
2019/12/12 Javascript
Python调用命令行进度条的方法
2015/05/05 Python
Python使用回溯法子集树模板解决爬楼梯问题示例
2017/09/08 Python
python实现xlsx文件分析详解
2018/01/02 Python
keras模型可视化,层可视化及kernel可视化实例
2020/01/24 Python
python GUI库图形界面开发之PyQt5 Qt Designer工具(Qt设计师)详细使用方法及Designer ui文件转py文件方法
2020/02/26 Python
django rest framework serializer返回时间自动格式化方法
2020/03/31 Python
使用Python将xmind脑图转成excel用例的实现代码(一)
2020/10/12 Python
CSS3的first-child选择器实战攻略
2016/04/28 HTML / CSS
Amcal中文官网:澳洲综合性连锁药房
2019/03/28 全球购物
石油工程专业毕业生求职信
2014/04/13 职场文书
护士演讲稿优秀范文
2014/04/30 职场文书
国家助学金受助感言
2015/08/01 职场文书
升学宴祝酒词
2015/08/11 职场文书
python机器学习实现oneR算法(以鸢尾data为例)
2022/03/03 Python
springboot读取resources下文件的方式详解
2022/06/21 Java/Android