Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。 当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案。 Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。Velocity也可以为Turbine web开发架构提供模板服务(template service)。Velocity+Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。 【VeloEclipse :Velocity在Eclipse平台下的一个辅助开发插件】
一种J2EE的前端模版技术。 和JSP,Freemarker差不多,都是用来展示网页内容的。 和JSP不同的是velocity只能显示Action中的数据,不能处理数据。不能写java代码,但是可以使用Velocity标记。 Velocity的页面(模版)可是是任何类型(text/html)的文件。 比如Action中有如下两个属性. class XxxAction{ private String title; private String name; public String execute(){ this.name = "Tom"; this.title="HelloWord"; return "velocity"; } //getter & setter 必须要提供getter } struts.xml <result name="velocity" type="velocity">a.html</result> velocity会将标记部分替换掉。 a.html <html> <head> <title>${title}</title> </head> <body> hello ${name} </body> </html> 最终将会返回页面如下: <html> <head> <title>HelloWord</title> </head> <body> hello Tom </body> </html> 注:这个例子需要在struts2下,并且加入velocity jar包。