FreeMarker中文参考手册

所需积分/C币:11 2013-06-13 09:33:18 4.46MB PDF
1
收藏 收藏
举报

FreeMarker中文参考手册
第三章配置..… 80 31基本内容 80 32共亨变量…… ∴80 3.3配置信息 34模板加载 83 3.5错误控制∴……86 第四章其它 4.1变量 90 42字符集问题 ∴90 4.3多线程. .:::::::::·:· 92 4.4Bean的包装… 5日 4.6在 Servlet中使用 FreeMarker. 4.7为 Free Marker配置安全策略. 4.8遗留的ⅩML包装实现………………107 49和Ant一起使用 Free Marker 410thon包装器 112 第三部分XML处理指南 114 前 114 第一章揭小XML文档… 115 1.11节点树. 12将XML放到数据模型中 17 第二章必要的ⅩML处珥.… 119 21通过例子来学习 119 22形式化描述 ..:::....::::::::::::.:.:.::: 126 第三章声明的XML处理 31基础内容… 131 32详细内容 133 第四部分参考文档 136 第一章内建函数参考文档.………………136 1.1处理字符串的内建函数 .136 12处理数字的内建函数… 13处理日期的内建函数 .153 14处理布尔值的内建函数 ·:···::····:··· 15处理序列的内建函数 158 16处理哈希表的内建函数 64 17处理节点(XML)的内建函数 164 18很少使用的和专家级的内建函数 166 第二章指令参考文档 21,else, elseif指令 22 switch,case, default, break指令 172 2.3ist, break指令 24 include指令 174 25 import指 177 26 hoarse指令 27 com press指令 28 escape, noescape指令… ::::.:: 180 29 assign指令 210 globa|指令 184 2.11loca|指令∴185 212 setting指令 2.13用户自定义指令(<回@..>) 87 214 macro, nested, return指令 189 2.15 function, return指令… 193 2.16fush指令 195 217stop指令 218ft指令, 219t,It,rt指令 220nt指令 ∴198 2.21 attempt,re 指令 22vsit, recurse, fallback指令 200 第三章特殊变量参考文档∴…. D重 205 第四章「L中的保留名称 207 第五章废弃的FL结构 208 5.1废弃的指令列表 208 5.2废弃的内建函数列表………………………………208 5.3老式的 macro和cal指令. ,,208 54转换指令 210 55老式FTL语法 211 5.6#-}式的数字插值 212 第五部分附录…….…….………….………….……………………1214 附录AFAQ. .214 1.JSP和 FreeMarker的对比 214 2. Velocity和 Free Marker的对比 215 3.为什么 FreeMarker对nu11-s和不存在的变量很敏感,如何来处理它?1215 4.文档编与」特性Ⅹ,但是好像 FreeMarker并不知道它,或者它的行为和文档描 述的不同,或者一个据称已经修改的BUG依然存在。 .216 5.为什么 FreeMarker打印奇怪的数字数字格式(比如100000或100000而不 是1000000)?…… 216 6.为什么 Free Marker会打印不好的小数和/域分组分隔符号(比如314而不是3,14) 217 7.为什么当我想用如格式打印布尔值时, FreeMarker会抛出错误,又如何来修正 呢 217 8. Free Marker标签中的<和>混淆了编辑器或XML处理器,应该怎么做?.217 9.什么是合法的变量名? 217 10.如何使用包含空格,或其他特殊字符的变量(宏)名?… 218 11.当我试图使用jsP客户标签时为什么会得到非法参数异常:形式参数类型不匹 配? 12.如何像ja9: includc一样的方式引入其它的资源? 13.如何给普通Java方法/ Template Me tho dMode1Ex/ Template Trans formMcdo1/ TemplateDircct ivcMo do1的实现传递普通 java.lang.*/java.ui1.*对象的参数?219 14.为什么在mMap【 mykey]衣达式中不能使用非字符串的键?那现在应该怎么 做? 20 15.当使用?keys/? values遍历Map(哈希衣)的内谷吋,得到了混合真正map 条日的java.uti1.Map的方法。当然,只是想获取map的条日。221 16.在 Free Marker的模板中如何改变序列(ists)和哈希表(maps)? 221 17.关于nu11在 FreeMarker模板语言是什么样的? ::::::::::: 222 18.我该怎么在表达式(作为另外一个指令参数)中使用指令(宏)的翰出?223 19.在输出中为什么用“?”米代替字符X? 223 20.在模板执行完成后,怎么在模板中获取计算过的值?. 224 21.我能允许用户上传模板吗?又如何保证安全呢? .224 22.如何在Java语言中实现方法或宏而不是在模板语言中?……225 23.为什么 FreeMarker的日志压制了我的应用程序? 225 24.在基于 Servlet的应用程序中,如何在模板执行期间发生错误时,展示·个友 好的错误提示页面,而不是堆栈轨迹? 22 25.我正使用一个可视化的HIML割裂模板标记的编辑器。你们可以改交模板语言 的语法来兼容我的编辑器么? 226 26. FreeMarker有多快?真的是2版本的要比1X版本(经典的 FreeMarker)的慢 吗? ,226 27.我的Jaa类怎么才能获取到关于模板结构的信息(比如所有变量的列表)? 227 28.你会一直提供向后的兼容性吗? 227 29.如果我们把 FreeMarker和我们的产品一起发行,我们需要发布我们产品的源代 码么?…………28 附录B安装 Free Marker 29 附录C构建 Free Marker 230 附录D版本 :.:::.:..a:::::::::::a:.::a:.:a:::::::: 231 2318版 231 2.3.17 版 233 2316版 235 2315版.1236 2314版 237 2313版 2312版 238 2.3.11 .239 23.10版 .240 238版 242 237版 242 2.37RC1版 .243 236版 244 35版 2.34版 245 233版 246 232版 ,247 231版 248 23版 250 228版… 2.2.7版.. 263 226版 263 225版 .::::::::::· 264 2.2.4 .:.:::::::.::.:.:.:::::::::::::日::: 264 223版 265 2.2.2版 2.2.1 版 266 22版 266 215版 275 214版 275 2.1.3 版 275 212版 276 21.1版 276 2.1版 277 2.01版…………281 20版 281 20RC3版 .282 20RC2版…………………………………283 2.0RC1 版 附录E许可…………………………………………1287 词汇表 前言 什么是 FreeMarker? FreeMarker是一款模板引擎:即一种基于模板、用来生成输出文本(仟何来自于HTML 格式的文本用来自动生成源代码的通用L具。它是为Java程序员提供的一个开发包,或者 说是一个类库。它不是面向最终用户的,而是为程序员提供的一款可以嵌入他们所开发产品 的应用程序。 FreeMarker实际上是被设计用来生成HTML页面,尤其是通过实现了基于MVc( Model View controller,模型-视图控制器馍模式的 Java servlet应用稈序。使用MVC模式的动态页面 的设计构思使得你可以将前端设计师(编写HTML页面的人员从程序员中分离出来。那么 所有人各司其职,发挥其最擅长的一面。网页设计师可以改写页面的显示效果而不受程序员 编译代码的影响,因为应用程序的逻辑(这里是Java程序)和页面设计(这里是 FreeMarker模 板)经被分开了。页面模板代码不会受到复杂程序代码的影响。这种分离的思想即便对 个程序员和页面设计师是同一个人的项目来说也都是非常有用的,因为分离使得代码保持简 洁而且易于维护。 尽管 FreeMarker也拥有一些编程能丿,但是它却不像PHP那样,是的一种全面的编稈 语言。反而,Java程序准备的数据来进行显示(比如SQL数据库查询), Freemarker仅仅是使 用模板生成文本贝面来呈现已经准备好的数据而已 Template file <html> Helo轼 name! Output /html> html> Java objects Free Marker Hello Fred! </html> d ata. name ="Fred" FreeMarker不是Web开发的应用程序框架。它是一个适用于Web应用程序框架中的组 件,但是FreeMarker引整本身并个知道HTTP协议或Javaservlet的存在。它仅仅来生成文 本内容。既然是这样,它也非常适用于非Web应用程序的开发环境。只是要注意的是,我 们使用 FreeMarker作为视图层的组件,是为了给诸如 Struts这样的 Model2应用框架提供现 成的解决方案。 FreeMarker本身是免费的,它基于BSD规则的许可协议。它也是OS认证的开源软件 OS认证是开源倡议的认证标识。 我们应该阅读什么内容? 如果你是一名 前端设计师,首先,你应该阅读的是模板开发指南部分,然后如果有需要的话,可以冉 阅读参考手册来获取更多的技术细节。 程序员,那么,你应该先阅读模板开发指南部分,然后是程序开发指南部分,最后如果 需要的话可以阅读参考于册来获取更多技术细节 本文档规约 变量名,模板代码段,Java类名等用如下格式书写,如:foo。 如果需要具体值来代替某些内容,那么用斜体书写,如:He1∞ yourName! 模板示例如下书写: Something 数据对象示例如下书写: Something 输出数据示例如下书写: Something 程序示例如下书写: Something 在面向贞面设计师和程序员所编写的章节中代码段给程序员这样与:这以是对程序员而 的 这样来强调新名词:一些新名词 联系我们 状取最新版本的 FreeMarker,订阅邮件请访问 FreeMarker主页:htp:/ freemarker. org 如果你需要帮助或者有好的建议,可以使用邮件(邮件文件可以免费搜索)或者Web论坛。 如果你想报告个B吧g,请使用web的Bug跟踪系统或者是邮件。查阅这些内容请访问 http://freemarker.org.同时,要注意我们有一个FAQ和索引,你可以使用它们。 几点说明 因为英文版文档的作者是匈牙利人,其母语非英语,那么在这种情况的翻译过程,可能 会有错误存在,作者结合自身多年对 FreeMarker的实践力求精准,但因个人才疏学浅,水 平有限,恳请读者批评指正 手册的更新根据大家的反馈随时进行,但只在有阶段性成果时公开发布修正版本,并在 Free Marker2.4版本研发完整后,会及时联系原作者获取新特性以便修改 本翻译是免费的,您可以自由下载和传播,不可用于任何商业行为。但文栏版权归译者 所有,原版归 Free Marker项目组所有,您可以引用其中的描述,但必须指明岀处。如需用 于商业行为,您必须和原作者取得联系 如果你发现英文原版任何错误(包括语法错误,错别字)或者是在文档中找到一些误导 或混淆错误,也可以是其他的建议,或是咨询 FreeMarker中的问题,您可以联系原作者。 E-mail: ddekany@ freemail. hu 关于本文档的翻译错误(包括语法错误,错别字)或中文技术交流,可以联系译者 nanlei1987@gmail.com或http://weibo.com/nanlei1987,我们共同研究,共同进步 第一部分模板开发指南 第一章模板开发入门 11简介 本章内容是对 FreeMarker进行简略的介绍,后续章节中将会详细展开。不过没有关系, 只要你阅读∫本章节的内容后,你就能够编写简单,但却很有用的 FreeMarker模板程序∫。 1.2模板+数据模型=输出 假设你在一个在线商店的应用系统中需要一个HTML页面,和下面这个页面类似 <html> <head> <title>Welcome! </title> /head> <h1>Welcome Big Joe!</h1> <p>Our latest product Ka href=products/greenmouse html">green mouse</a>! </html> 在这里,比方说用户名(所有的” Big Joe”),应该是登录这个网页的访问者的名字,并 且最新产品的数据应该来自于薮据库,这样它们才可以随时进行更新。这样的情况下,你不 能在HTML页面中直接输入登录用户的用户名,最新产品的URL和名称,你不能使用静态的 HTML代码,那样是不能即时改变的。 对于这个问题, FreeMarker的解决方案是使用模板来代替静态的HTML文本。模板文件 同样是静态的HTML代码,但是除了这些HTML代码外,代码中还包括了一些 Free Marker 指令元素,这些指令就能够做到动态效果。 <htmi> <head> <title>welcome!</title> </head> <body> <h1>Welcome s[user]!</h1> p>Our⊥ atest p <a href=s(latestProduct url]">silatestProduct, name]/a>! </bod </html>

...展开详情
试读 127P FreeMarker中文参考手册
立即下载 低至0.43元/次 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
上传资源赚积分or赚钱
最新推荐
FreeMarker中文参考手册 11积分/C币 立即下载
1/127
FreeMarker中文参考手册第1页
FreeMarker中文参考手册第2页
FreeMarker中文参考手册第3页
FreeMarker中文参考手册第4页
FreeMarker中文参考手册第5页
FreeMarker中文参考手册第6页
FreeMarker中文参考手册第7页
FreeMarker中文参考手册第8页
FreeMarker中文参考手册第9页
FreeMarker中文参考手册第10页
FreeMarker中文参考手册第11页
FreeMarker中文参考手册第12页
FreeMarker中文参考手册第13页
FreeMarker中文参考手册第14页
FreeMarker中文参考手册第15页
FreeMarker中文参考手册第16页
FreeMarker中文参考手册第17页
FreeMarker中文参考手册第18页
FreeMarker中文参考手册第19页
FreeMarker中文参考手册第20页

试读结束, 可继续阅读

11积分/C币 立即下载 >