Apache Velocity实现模板化

1.参考文献

http://www.cnblogs.com/zhuboxingzbx/articles/1225103.html

http://www.cnblogs.com/amboyna/archive/2008/06/19/1225105.html

2.概述

2.1.Velocity模板引擎

模板引擎的设计思想最早由Webmacro提出,并被应用在一个著名的搜索引擎www.altavista.com上。后来,这种思想渐渐被Apache开发小组所采用,并作为一个子项目被提出来,这就是现在的Velocity。

模板引擎与MVC中视图部分的关系更为密切。Velocity可以应用在任何需要格式化数据显示的Java程序中。那么Velocity到底是什么呢?它的官方解释是:“Velocity是一种基于Java的模板引擎,它允许任何人使用简单而强大的模板语言来引用定义在Java代码中的对象。”

2.2.使用Velocity的优点在于:

  • 很容易集成在各种各样的程序领域中;
  • 为网页制作人员提供了一种清晰而简单的语法;
  • 因为模板和代码是分离的,所以可以分别独立的开发和维护它们;
  • Velocity引擎可以很容易地集成到一些Java运行环境,特别是Servlet中;
  • Velocity使得模板可以访问任何环境对象中的共有方法。
Velocity的强大之处还在于它严格地区分程序开发功能的职责划分。它通过限制模板可能访问的对象(即后台程序允许其得到的对象)来实现这一点。这意味着网页设计人员可以只把精力放在数据的显示部分(View),而程序员则只要关注如何写好程序的控制层(Controller)、商业逻辑与数据管理(Model)。这就是典型的MVC开发模式,它简化了开发和日益复杂的应用和维护工作。

2.3.Velocity最擅长做的工作包括:

  • ◆ 基于Servlet的网站制作;
  • ◆ Java和SQL代码生成;
  • ◆ XML处理和转换;
  • ◆ 文字处理,比如生成trf文件等。
不过,Velocity用得最多的还是在基于Java Servlet的网页程序中做生成网页的引擎,以替代JSP等技术。除了使用比较容易外,它提供了强大的模板语言来显示和操作数据。注意,不是生成数据,这点很重要,因为生成工作应该是程序逻辑的部分。

Velocity非常适合在J2EE(Java 2 Platform,Enterprise Edition)的网站开发中替代JSP,做输出页面的技术工作。虽然JSP包含在J2EE规范中,但是J2EE本身并不需要JSP。

3.实例

3.1.实例1

模板(hellosite.vm)只是提供一些静态的字符,中间加杂着一些类如$title的“通配符”,这是要在HelloWorld.java中替换的。下面是hellosite.vm的代码:

HelloWorld.java就是处理程序了,其中注释写的很清楚了,下面是HelloWorld.java的代码:

3.2.实例2

这里模板和实例1的相同,java代码有所不如,代码如下。

在这里,配置文件主要的作用就是提供a.properties文件的路径,不多说了,下面是a.properties的代码:



posted @ 2011-12-06 09:10 xwdreamer 阅读(...) 评论(...) 编辑 收藏