Velocity、FreeMarker与Tiles在Web开发中的应用
1. Velocity和FreeMarker简介
FreeMarker和Velocity是与JSP目标不同的模板工具。它们都提供了复杂的模板语言,基于Java编写的专有引擎。与JavaServer Pages不同,FreeMarker和Velocity尽可能地将逻辑与表示分离,甚至不允许在模板中包含Java代码。
在职责严格分离的团队中,有图形设计师和HTML程序员时,选择FreeMarker或Velocity可能更好,因为它们提供更面向HTML的模板语言,且Java开发者不会在模板中添加Java代码。
Spring通过 org.springframework.web.servlet.view.freemarker
和 org.springframework.web.servlet.view.velocity
包分别支持基于FreeMarker和Velocity的视图。
此外,Velocity和FreeMarker都可用于电子邮件模板,例如使用Velocity发送电子邮件在相关章节有深入介绍。
2. 配置视图解析器
配置Spring与Velocity或FreeMarker一起工作,需要在Web应用程序上下文中添加视图解析器和配置器。
2.1 配置Velocity
Velocity模板使用Velocity模板语言(VTL)创建,并通过 VelocityEngine
渲染。配置引擎需要使用 org.spr