Velocity基本语法及实现客户端和服务器端模板.docxVIP

Velocity基本语法及实现客户端和服务器端模板.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Velocity基本语法及实现客户端和服务器端模板

Velocity基本语法及实现客户端和服务器端模板Velocity 是一种通用的、开放源代码的模板解决方案,可以在报告生成 / 数据转换应用程序中独立使用,也可以在 MVC 模型框架中作为视图组件。本文中,Sing Li 介绍了 Velocity,并说明如何将其模板处理功能集成到客户端独立应用程序、服务器端 Web 应用程序或者 Web 服务中。Sing Li?(westmakaha@), 作家, Wrox Press2004 年 3 月 13 日内容在 HTML 或者 XML 这样的标准表示或交换格式中,文本性数据的操作和转换是一种频繁而且通常非常单调的活动,每个开发人员都会遇到。模板引擎可以改善这个过程,它在模板中保留输出中的静态部分,而动态生成和安排变化的部分。Velocity 是一种高度实用的、开放源代码的模板引擎,可以方便地集成到其他客户端或服务器端应用程序中。对于服务器端应用程序,如果与兼容Servlet 2.3+ 的 Web 层容器集成,Velocity 为 JSP 技术提供了一种可行的替代方案,可以强制实施表示逻辑与应用程序业务逻辑的清晰划分。事实上,Velocity 支持的模板语言非常简单,形成的模板也十分清晰,Web 站点设计人员和样式开发人员可以学习和维护这些模板。本文中将考察 Velocity 的简单模板语言、创建一些模板并将其用于独立的客户应用程序。然后我们将把这个模板引擎集成到 Struts MVC 框架中作为视图组件。基本模板引擎操作基本模板引擎操作非常简单。首先看一看清单 1 中的模板:清单 1. 基本的 Velocity 模板 html head titleA Template Based Page/title /head body pThis is a page generated by $generatedBy./p pThe customers name is $customerName./p /body /html这个模板是一个完整的 HTML 文件。您可以使用文本编辑器或者喜欢的图形化可视网页编辑器创建该文件。创建的简易性是基于模板的系统的主要好处和要求。当模板引擎运行时,清单 1 中彩色显示的部分将被实际的数据替换。获取数据并与模板结合的过程称为?合并。看一看清单 2 中的脚本所表示的数据:清单 2. 为模板合并设置数据值 #set ($generatedBy = Velocity) #set ($customerName = John Doe)现在,如果清单 1 中的模板与清单 2 中的数据合并,将得到清单 3 所示的结果:清单 3. 合并到模板中的数据 html head titleA Template Based Page/title /head body pThis is a page generated by Velocity./p pThe customers name is John Doe./p /body /html您可能发现,这种特性和字处理程序中的邮件合并功能类似。在字处理程序中,信函结构与来自邮件列表的名称和地址合并。和邮件合并一样,这种应用程序最适用于要合并的数据源非常大而且有变化的情况。从这个单纯的意义上讲,Velocity 是一个模板引擎。Velocity 的输出格式仅受文本模板中所能放置的内容的限制。包括现在最流行的格式(HTML、XML、SQL,等等)。使用 Velocity 模板语言创建模板Velocity 模板是文本文件(HTML、XML 等等),其中包括:照原样合并的静态部分将被要合并的数据替代的占位符脚本语言中的指示符和指令Velocity 模板使用的脚本语言称为 Velocity 模板语言(VTL)。和其他脚本语言相比,VTL 语法相对而言不是很丰富。任何具有编程背景的人都可以非常快地学会 VTL。占位符与引用VTL 中的引用是一个命名元素,如?$customerName。引用可以在 Velocity 模板中作为占位符。在模板合并过程中,这些占位符将被替换成相应的文本值,从而形成最终的输出。比如,在?清单 1中,我们可以看到使用了两个 VTL 引用(?$generatedBy和?$customerName)已生成最终输出结果。变量在 VTL 中是一种引用类型。您可以使用?#set()指示符为变量赋值。清单 4 给出了一些例子:清单 4. 变量类型的 VTL 引用 #set( $this = Velocity) #set( $numericBase = 999 ) #set( $booleanCondition = true ) This page is generated using $this.

文档评论(0)

juhui05 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档