`

FreeMarker特性

阅读更多

FreeMarker特性

1、通用目标

l         能够生成各种文本:HTMLXMLRTFJava源代码等等

l         易于嵌入到你的产品中:轻量级;不需要Servlet环境

l         插件式模板载入器:可以从任何源载入模板,如本地文件、数据库等等

l         你可以按你所需生成文本:保存到本地文件;作为Email发送;从Web应用程序发送它返回给Web浏览器

 

2、强大的模板语言

l         所有常用的指令:includeif/elseif/else、循环结构

l         在模板中创建和改变变量

l         几乎在任何地方都可以使用复杂表达式来指定值

l         命名的宏,可以具有位置参数和嵌套内容

l         名字空间有助于建立和维护可重用的宏库,或者将一个大工程分成模块,而不必担心名字冲突

l         输出转换块:在嵌套模板片段生成输出时,转换HTML转义、压缩、语法高亮等等;你可以定义自己的转换

 

3、通用数据模型

l         FreeMarker不是直接反射到Java对象,Java对象通过插件式对象封装,以变量方式在模板中显示

l         你可以使用抽象(接口)方式表示对象(JavaBeanXML文档、SQL查询结果集等等),告诉模板开发者使用方法,使其不受技术细节的打扰

 

4、为Web准备

l         在模板语言中内建处理典型Web相关任务(如HTML转义)的结构

l         能够集成到Model2 Web应用框架中作为JSP的替代

l         支持JSP标记库

l         MVC模式设计:分离可视化设计和应用程序逻辑;分离页面设计员和程序员

 

5、智能的国际化和本地化

l         字符集智能化(内部使用UNICODE

l         数字格式本地化敏感

l         日期和时间格式本地化敏感

l         US字符集可以用作标识(如变量名)

l         多种不同语言的相同模板

 

6、强大的XML处理能力

l         <#recurse> <#visit>指令(2.3版本)用于递归遍历XML

l         在模板中清楚和直觉的访问XML对象模型

l         FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写

l         FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用程序

l         虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据(如下图)

l         FreeMarker不是一个Web应用框架,而适合作为Web应用框架一个组件

l         FreeMarker与容器无关,因为它并不知道HTTPServletFreeMarker同样可以应用于非Web应用程序环境

l         FreeMarker更适合作为Model2框架(如Struts)的视图组件,你也可以在模板中使用JSP标记库

l         FreeMarker是免费的

 

 

分享到:
评论

相关推荐

    freemarker格式化缩进文本或include指令

    在这个场景中,"freemarker格式化缩进文本或include指令"主要涉及了两个重要的FreeMarker特性:格式化输出(formatting indentation)和模板包含(template inclusion)。 1. **格式化输出**: FreeMarker默认并不...

    springboot如何使用Freemarker模版引擎

    这只是一个基础的介绍,实际开发中,你可以根据项目需求配置更多的Freemarker特性和功能,如缓存管理、日期格式化等,以满足复杂的应用场景。记住,熟练掌握Freemarker的语法和配置,能让你在构建动态网页时更加...

    FreeMarker概述

    FreeMarker概述、FreeMarker特性、FreeMarker应用指南

    freemarker使用文档

    这一部分提供了对FreeMarker特性的详细参考,包括内建函数和指令。 一、内建函数参考文档 1.1 处理字符串的内建函数:提供了各种内建函数来处理字符串数据。 1.2 处理数字的内建函数:关于数字数据处理的内建函数。...

    freemarker最新中文手册更新时间 2015-10-07

    ### FreeMarker 特性 1. **性能优化**:FreeMarker缓存编译后的模板,提高执行效率。 2. **国际化支持**:可以轻松处理多语言环境,通过`#setLocale`和`#fmt`指令。 3. **安全机制**:防止恶意用户注入代码,通过...

    freeMarker例子

    这个例子可以作为基础,通过引入更多的FreeMarker特性,如条件语句、循环结构、自定义函数等,来增强模板的功能。同时,可以通过优化Servlet的性能,如使用缓存、异步处理等手段,提高整个应用的响应速度。 综上所...

    freemarker-2.3.23jar

    具体到`2.3.23`这个版本,它可能包括以下特性: 1. **模板设计**:Freemarker支持多种模板设计,如HTML、XML、邮件模板等。模板文件的扩展名通常是`.ftl`(FreeMarker Template Language)。 2. **数据模型**:...

    eclipse的freemarker插件

    6. **集成开发环境**:与Eclipse的其他特性无缝集成,例如版本控制、调试器、构建工具等,为Freemarker开发提供一站式解决方案。 7. **版本更新**:插件会定期更新,以适配最新的Freemarker版本和Eclipse平台,保持...

    FreeMarker2.3.23官方中文文档

    6. **安全机制**:FreeMarker有防止跨站脚本(XSS)攻击的安全特性,可以设置模板的安全模式,限制模板执行某些可能带来安全风险的操作。 7. **模板缓存**:为了提高性能,FreeMarker可以缓存编译后的模板,减少...

    velocity和freemarker的比较

    - **学习曲线**:Velocity的学习曲线较平缓,适合初学者,而FreeMarker可能需要更多时间去熟悉其高级特性。 - **灵活性**:FreeMarker的灵活性更强,可以更好地处理复杂逻辑,而Velocity更强调模板的纯粹性,尽量...

    freemarker各种版本的jar包

    以下是对给定的Freemarker不同版本jar包的详细说明: 1. **Freemarker 2.3.19**: - 这个版本可能包含了一些基本的功能,如模板语言的语法,变量、表达式和控制结构。 - 它可能已经支持了数据模型绑定,允许...

    Freemarker简介及标签详解大全

    -FreeMarker 的特性: 1. 通用目标:能够生成各种文本:HTML、XML、RTF、Java 源代码等等。 2. 轻量级:易于嵌入到你的产品中,不需要 Servlet 环境。 3. 插件式模板载入器:可以从任何源载入模板,如本地文件、...

    通过freemarker模板 生成PDF

    注意,为了保持HTML样式在转换过程中的完整性,你需要确保HTML模板中使用的CSS是wkhtmltox支持的,并且避免使用某些不兼容的特性。此外, wkhtmltox的配置选项也可以调整,例如设置页面大小、边距和加载策略。 通过...

    freemarker 2.3.10架包

    在2.3.10这个版本中,Freemarker提供了以下关键特性: 1. **模板语言**:Freemarker的模板语言是一种简单的、非侵入式的标记语言,允许开发者在模板中嵌入变量和控制结构。例如,`&lt;#if&gt;`、`&lt;#foreach&gt;`等指令用于...

    struts2+freemarker

    它的语法简洁且强大,支持条件判断、循环、函数调用等编程特性。在Struts2中,Freemarker模板通常被用作视图层,将由Action处理后的数据填充到模板中,生成最终的用户界面。开发者可以定义变量和方法,在模板中使用...

    freemarker2.3.23.jar(廉价资源,只求下载量)

    Freemarker是一个强大的模板引擎,它属于Java世界中的一个开源项目,主要应用于生成动态HTML、XML或其他文本格式的输出。...同时,Freemarker提供的丰富特性和灵活性,使其在各种Java项目中都有广泛的应用。

    FreeMarker文档.CHM

    6. **安全特性**:FreeMarker允许限制模板的执行权限,防止恶意用户通过模板注入攻击。 7. **预处理与后处理**:开发者可以通过自定义处理器对模板进行预处理(如添加全局变量)和后处理(如HTML转义)。 8. **...

    FreeMarker相关学习文档

    二、FreeMarker的主要特性 1. 非脚本语言:FreeMarker模板不包含执行逻辑,所有逻辑都在后端Java代码中处理,这有助于保持模板清晰,易于维护。 2. 高效性:由于模板在服务器端预编译为Java代码,因此FreeMarker执行...

    Freemarker 自定义标签 简单案例

    自定义标签则是Freemarker的一个高级特性,允许我们扩展其内置功能,创建自己的模板标签。自定义标签通常以`&lt;@...&gt;`的形式出现,它们可以封装复杂的逻辑,提供更抽象的界面给模板设计者。创建自定义标签通常需要两个...

Global site tag (gtag.js) - Google Analytics