用过freemarker的人领略过它的经典的黄色报错页面,特别是在页面上输出值时,只要为null,就整个页面都是黄黄的恶心的报错页面,一直以来,受够了这个折磨,今天一以前的同事发来好消息,原来现在的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>
分享到:
相关推荐
FreeMaker是一款强大的模板引擎,常用于Java环境中动态生成HTML、XML、邮件文本等各类文档。在Web开发中,它与Servlet...FreeMarker的强大之处在于其灵活性和扩展性,能够适应各种复杂的场景,为Java Web开发带来便利。
- `${expression}`:表达式,用于从数据模型中获取值并输出。 - `<#if>`,`<#else>`,`<#elseif>`:条件语句,用于控制模板中的条件渲染。 - `<#foreach>`:循环语句,遍历数据集合。 - `<#assign>`:定义变量。...
在这个场景中,我们关注的是一个基于FreeMarker(Freemaker)的Java代码生成器。FreeMarker是一个强大的、轻量级的模板引擎,主要用于生成动态Web内容,但在Java世界里,它也被广泛用于生成源代码、配置文件等静态...
在使用freemaker进行开发时,走了很多弯路,这个是最后终于成功后进行的总结,保留一份,并共享给大家
- **标题:** "公用函數之將數值金額轉換英文格式" - **描述:** "公用函數之將數值金額轉換英文格式" 标题与描述均明确指出此函数的主要目的是将数值(通常是指货币金额)转换为英文格式。这意味着输入一个数字(如...
内容分为两部分一份代码+解释word文档,另外一份为FreeMaker详细api 在文档中详细介绍了FreeMaker+xml转word碰到的问题如多张图片同时显示问题;目录更新问题,后期处理页眉页脚,页眉设置等问题。总之你想要的问题...
freemaker作为模板引擎,相当强大,当前的最新版了
1. **变量表达式**: `${variable}`用于输出变量的值,如`${name}`会输出Java对象中名为`name`的属性值。 2. **指令**: `<#...>`是FreeMarker的指令,如`<#if>`用于条件判断,`<#foreach>`用于循环。 3. **函数**: ...
本资源“freemaker导出word的doc_docx_带动态图片及word转pdf工具类_jar_万能整理汇总.rar”显然是一个集合了多种功能的压缩包,旨在帮助开发者高效地使用Freemarker来处理复杂的Word文档生成任务,并且包含了将Word...
这个插件旨在为开发者提供更好的支持和集成环境,使他们能够更高效地利用FreeMarker模板语言来编写和调试模板。 FreeMarker的核心功能包括: 1. **模板语言**:FreeMarker使用模板语言,这是一种声明式语言,不...
- `${var}`:输出变量的值。 ##### 6. XML处理 - `<#visit xmlnode>`:调用宏处理XML节点及其子节点。 - `<#recurse xmlnode>`:调用宏处理XML节点的子节点。 #### 三、高级功能 Freemaker除了基本的语法外,还...
标题提到的"freemaker生成静态文件时转换文件原编码GBK为UTF-8",这涉及到的是在使用FreeMarker生成静态文件时,如何处理从GBK编码转换到UTF-8编码的问题。 GBK是GB2312编码的扩展,包含了更多的汉字,但在处理多...
FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序 虽然FreeMarker具有一些编程的能力,但通常由Java程序...
3. **控制结构**:FreeMarker提供了一系列的控制结构,如`#if`(条件判断)、`#foreach`(循环)等,用于控制模板的输出。 4. **指令**:FreeMarker的指令允许开发者定义更复杂的逻辑,如`#import`引入其他模板,`#...
它使用简单的文本模板,这些模板与数据模型结合后,能够在运行时生成特定的输出。模板设计者和程序员可以各自专注于他们的领域,无需互相干涉,从而实现了职责分离。 2. 自动化代码生成:通过Freemarker,开发者...
开发者定义好模板,然后在模板中插入变量和控制结构,FreeMarker会根据提供的数据模型填充这些变量,生成最终的输出。 2. **Java与FreeMarker集成** 在Java项目中,首先需要添加FreeMarker的依赖库,通常通过Maven...
1. **初始化Freemaker**:设置模板目录、输出格式等配置。 2. **加载模板**:读取.ftl文件并加载为Template对象。 3. **构建数据模型**:根据业务需求,准备数据模型,可以是Java对象集合或Map。 4. **合并数据和...
FreeMaker_HL7toXMLorJSON.rar 是一个与医疗健康信息交换标准HL7(Health Level Seven)相关的压缩包,它包含工具和资源用于将HL7格式的数据转换为XML或JSON这两种现代数据交换格式。Orion Rhapsody FreeMaker是这个...