- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[freemarker学习分享
FreeMarker学习分享 曾令华 2011.09.28 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. 主题 一、什么是模板技术? 二、结合实际,我们使用模板技术的好处? 三、当前流行的JAVA模板引擎 四、FreeMarker专题 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. 什么是模板技术? 所谓模板,就是一份已经写好了基本内容,有着固定格式的文本。其中空出或者用占位符标识的内容,由模板引擎加载和解析后,并采用动态数据替代。模板技术从本质上来讲,它是一个占位符动态替换技术。一个完整的模板技术包含四个元素: 1、模板语言: 变量标识和表达式语句,一般包含条件控制和循环控制。 2、模板文件 模板文件指包含了模板语言的文本文件。 3、动态数据的数据对象 模板文件包含的是静态内容,而用于动态填充的对象就是动态数据对象。一般用Map(利用key/value)来定位动态数据对象。 4、模板引擎 用于合并模板与动态数据对象,得到最终的结果。 一般分三步:1)取得模板文件解析并确认其中的模板语言符合规范 2)取得动态数据对象 3)合并模板文件(静态内容)和数据对象(动态内容),并生成最终结果。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. 结合实际,我们使用模板技术的好处 目前我们系统的接口大概有四种形态: 1、项目引用jar包的形式(java项目) 2、Socket的接口形式 3、服务器内部调用返回XML格式数据 4、客户端直接调用服务器接口,返回JSON格式数据 针对第3,4种形态,很多接口的返回结果是相对固定的,有一定的格式。甚至有可能一个接口,可能根据需要返回不同格式的数据。如可以选择返回XML结构的数据,也可以返回JSON结构的数据。 结合实际,引进模板技术 ,有以下几个好处: 1、模板内容直观,易于理解 2、相同的业务逻辑,可定制不同的响应结果 3、实现业务逻辑与视图的分离,业务层更专注于数据的处理 4、模板修改简单,方便 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. 当前流行的java模板引擎 当前,java比较流行的模板引擎有Velocity和FreeMarker。 Velocity是一个简单甚至更加轻量级的模板技术,但是与Freemarker相比,没有Freemarker功能强大。在更多应用中,Freemarker使用起来更简单。 共同点: 1、同为java模板技术,都可以实现严格的MVC隔离 不同点: 1、Freemarker 标签功能更加强大,对JSP标签支持良好 2、Freemarker内置大量常用功能,使用更加方便,如在VIEW层format日期和数字格式。 3、Velocity的eclipseplugin支持没有Freemarker的eclipseplugin支持好, Freemarker的插件除了支持freemarker语法也支持html语句,而velocity的插件只支持velocity的语法。 4、Freemarker支持宏定义(类似jsp标签)。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. 什么是FreeMarker? FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。 如下图: 模板+数据模型=输出 FreeMarker在我们的应用中仅仅只是一个组件,并不知道什么http协议或者Servlet。仅仅是用于生成文本内容而已。 Evaluation only. Create
文档评论(0)