FreeMarker笔记一

1.what is FreeMarker?
FreeMarker是一个模板引擎;一个产生模板文本(从HTML等任何文件中)的通用工具。FreeMarker被设计为基于Servlet应用的采用MVC模式,来产生HTML页面。由于采用了MVC模式,对于动态页面来说,意味着,设计者(HTML作者)和程序员分离。每个人,都可以做他擅长做的。设计改变页面的外观,程序员不用重新编译或修改他的代码。因为,应用逻辑(Java programs)和页面设计(FreeMarker templates)是分开的。模板不会受到复杂程序段的影响,而变的复杂。这个分离,还可能是项目的程序员和页面设计者不是同一个人,因为他可以保证应用清晰和易维护。
2.what is FreeMarker's features?
(1)可以产生产生任何类型的文本:HTML,XML,RTF,Java source code,etc。
(2)容易嵌入到开发的产品中:轻量型。不依赖java.servlet classes。
(3)插入式模板调入方法:可以从任何地方调入模板,本地文件,数据库,etc。
(4)可以用产生的文本,做任何事情:存入本地文件,做为e-mail内容,返回给请求的客户端。
(5)所有惯用的命令:if/elseif/else, loop。
(6)声明或改变变量值。
(7)可以使用表达式
1)String操作:concatenation, sub-String, uppercase, capitalize, escaping, etc。
2)浮点数值型计算
3)布尔型计算
4)遍历数组和组合数组元素
5)添加函数
(8)给宏定义名称,位置等参数,给宏添加内嵌的内容。
eg:<@myMacro color="red" width="2">...< /@myMacro>
(9)命名空间帮助建造和维护可重复利用的宏库或将大的项目划分成独立的模块,且不用担心命名冲突。
(10)输出转换器:转换HTML关键字,compression,加亮显示的语法。通过内嵌的模板来产生输出。
(11)通用数据模型。不直接反射到java对象,而是作为变量放入模板中。模板作者可以不用关心实现的技术细节。
(12)we-read
1)模板语言中内置了构造器,用来处理典型的web任务像HTML-escaping。
2)可以替代jsp,被集成到MVC框架中。
3)支持JSP标签,支持JSP2.1,除了JSP 2的tag files文件外的所有特性。
4)支持MVC模式,分离了可视化的设计从应用逻辑中。分离页面设计者从程序员中。
(13)国际化和本地化支持
1)编码(UNICODE)
2)本地数字格式
3)本地时间和日期格式
4)非UN字符可以作为标识(eg:变量名)
5)同一个模板可以适应多种语言平台
(14)强大的XML处理能力
1)<#recurse>和<#visit>标签用来生成XML tree
2)从模板中访问直观和清晰的XML对象。
(16)相关的产品
1)Velocity
2)XSLT

你可能感兴趣的:(设计模式,freemarker,mvc,jsp,嵌入式)