freemarker处理空值】的更多相关文章

freemarker处理空值 1.设计思路 (1)封装学生类和课程类 (2)新建学生课程页面ftl文件 (3)创建测试方法 2.封装课程类 Course.java: /** * @Title:Course.java * @Package:com.you.freemarker.model * @Description:课程封装类 * @author:Youhaidong(游海东) * @date:2014-5-28 下午9:41:41 * @version V1.0 */ package com.…
1.空值处理运算符 如果你在模板中使用了变量但是在代码中没有对变量赋值,那么运行生成时会抛出异常.但是有些时候,有的变量确实是null,怎么解决这个问题呢? 判断某变量是否存在:“??” 用法为:variable??,如果该变量存在,返回true,否则返回false <#if aaa??> aaa变量存在 <#else> aaa变量不存在 </#if> 缺失变量默认值:“!” 我们除了可以判断是否为空值,也可以使用!对null值做转换处理 在模板文件中加入 ${aaa!…
exists:由空值测试运算符的引入,它被废弃了. exp1?exists 和 exp1??是一样的, ( exp1)?exists 和(exp1)??也是一样的. if_exists:由默认值运算符的引入,它被废弃了. exp1?if_exists 和 exp1!相似, ( exp1)?if_exists 和( exp1)! 相似.不同之处在于,用 if_exists 的默认值不仅仅同时是空字符串,空序列和空哈希表,而且布尔值 false 和不做任何事情的变换,还有忽略所有参数. <#if s…
NO.1 而对于FreeMarker来说,null值和不存在的变量是完全一样的 NO.2 ! 指定缺失变量的默认值 返回String NO.3 ?? 判断变量是否存在 返回boolean NO.4 ${variable!} ${variable!"abcd"} 变量为null时或不存在时,前者显示空字符串,后者为abcd NO.5 ${variable??} <#if variable??> <h2>${variable}</h2> <#/if…
默认值操作符: 使用形式例如: userName!default_expr 或 userName! 或 (userName)!default_expr 或 (userName)! 这个操作符允许你为可能不存在的变量指定一个默认值(default_expr),'!'后没有参数默认返回一个空. 例如,假设下面展示的代码中没有名为 mouse 的变量: ${mouse!"No mouse."} <#assign mouse="Jerry"> ${mouse!&…
http://blog.java-zone.org/archives/800.html <#list listBlogPost as blogPost> </#list> 如果 listBlogPost 为NULL 会报错.加上?exists(是否存在) 或者?default("")如果为null时默认为空, 例如: <#if listBlogPost?exists && listBlogPost.size != 0 > <#i…
原文:http://zhousheng193.iteye.com/blog/1319772 <#if letVo.manageScore!=""> ${html('${(letVo.manageScore)!}')} </#if> 当letVo有值,manageScore为“”时(不是null),必须使用 ${html('${(letVo.manageScore)!}')} 页面一样 会显示,使用 测试是否为missing value unsafe_expr??…
模板技术在现代的软件开发中有着重要的地位,而目前最流行的两种模板技术恐怕要算freemarker和velocity了,webwork2.2对两者都有不错的支持,也就是说在webwork2中你可以随意选择使用freemarker或velocity作为view,模板技术作为view的好处是很多,尤其和jsp比较起来优点更大,众所周知jsp需要在第一次被执行的时候编译成servlet,那么这个过程是很慢的,当然很多应用服务器都提供预编译的功能,但是在开发的时候仍然给我们程序员带来了很多痛苦,每次修改都…
模板引擎可以让程序实现界面与数据分离,业务代码与逻辑代码的分离,这就提升了开发效率,良好的设计也使得代码复用变得更加容易.一般的模板引擎都包含一个模板解析器和一套标记语言,好的模板引擎有简洁的语法规则.强大的功能.高效的渲染效率.详尽的帮助说明与不断的更新与维护.常见的前端模板引擎有: 常用的java后台模板引擎:jsp.FreeMarker.Velocity等. 请不要迷恋速度,为了推广的测试可能是片面的,好的模板引擎经得起时间考验,建议大家选择成熟的.常用的模板引擎.另外不管前后端的模板引擎…
copy自http://demojava.iteye.com/blog/800204 以下内容全部是网上收集: FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成: 1,文本:直接输出的部分 2,注释:<#-- ... -->格式部分,不会输出 3,插值:即${...}或#{...}格式的部分,将使用数据模型中的部分替代输出 4,FTL指令:FreeMarker指定,和HTML标记类似,名字前加#予以区分,不会输出 下面是一个FreeM…