http://llying.iteye.com/blog/387253
velocity是一个非常好用的模板引擎
这里不对项目进行详细介绍,可以访问apache官方网站查看相关说明
下面我们通过一个简单的实例来讲解一下velocity的使用过程
// 创建引擎
VelocityEngine ve=new VelocityEngine();
//设置模板加载路径,这里设置的是class下
ve.setProperty(Velocity.RESOURCE_LOADER, "class");
ve.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
try {
//进行初始化操作
ve.init();
//加载模板,设定模板编码
Template t=ve.getTemplate("test/velocity/simple1.vm","gbk");
//设置初始化数据
VelocityContext context = new VelocityContext();
context.put("name", "张三");
context.put("project", "Jakarta");
//设置输出
StringWriter writer = new StringWriter();
//将环境数据转化输出
t.merge(context, writer);
//简化操作
//ve.mergeTemplate("test/velocity/simple1.vm", "gbk", context, writer );
System.out.println(writer.toString());
} catch (Exception e) {
e.printStackTrace();
}
这里需要注意的是Template t=ve.getTemplate("test/velocity/simple1.vm","gbk");
这里的gbk不是必须的,但是我的模板中使用了中文所以要指定编码规则。
其次是
ve.setProperty(Velocity.RESOURCE_LOADER, "class");
ve.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
很多人初次使用velocity的时候总是找不到模板,而改用绝对路径访问模板
就是因为没有设置模板存储的地址
也可以使用Velocity.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, loadpath);
loadpath是路径地址
simple1.vm
## 第一个例子
你好 $name !
$project project.
到目前为止一个简单单完整的velocity已经完成。
分享到:
相关推荐
通过实践上述教程中的步骤,你将能够逐步掌握Struts2框架的基本概念、配置和使用方法,为后续深入学习和开发奠定坚实的基础。Struts2的灵活性、强大的MVC实现和丰富的插件支持使其成为Java web开发中的重要工具。
5. 其他配置文件如`velocity.properties`,`struts-default.vm`,`struts-plugin.xml`则分别用于Velocity模板引擎的配置、视图模板的默认设置以及插件的配置。 在使用IDE如MyEclipse进行开发时,为了获得`struts....
2. 编写Struts2配置文件:Struts2的默认配置文件名为struts.xml,通常放置于WEB-INF/classes目录下,使用标准的XML格式书写配置。 3. 在web.xml中配置Struts2启动信息:Struts2框架通过Filter在web.xml中配置启动,...
5. **velocity.properties, struts-default.vm, struts-plugin.xml** - 其他辅助配置文件,分别涉及Velocity模板引擎、默认视图模板和插件配置。 为了在MyEclipse中获得XML编辑器的代码提示,你需要手动导入Struts2...
5. 其他配置文件如`velocity.properties`, `struts-default.vm`, `struts-plugin.xml`服务于特定功能,例如Velocity模板和插件配置。 对于开发环境的优化,如果你使用MyEclipse,可能需要手动导入DTD来获得XML文件...
1. 基本教程:介绍Velocity的概念、安装和基本用法。 2. VTL语法详解:深入解析VTL的各种指令和表达式。 3. 示例代码:展示如何在实际项目中使用Velocity。 4. 最佳实践:提供一些编写高效、可维护模板的建议。 5. ...
- **WebWork2** 建立在Xwork的基础上,专注于处理HTTP请求和响应,使用**ServletDispatcher**将HTTP请求转换为Action,并支持多种视图展示方式如JSP、Velocity、FreeMarker等。 #### 二、WebWork安装与入门 ##### ...
JNDI(Java命名和目录接口)是一个Java API,为名称和目录服务提供了一种统一的方法,使Java代码可以使用一组标准API与不同的命名和目录服务进行交互。 JMAPI(Java管理API)是一个Java接口集,用于访问和控制Java...
#### 一、J2EE基础知识 - **定义**:J2EE(Java 2 Platform, Enterprise Edition)是一种基于Java的平台标准,用于开发可移植、健壮、安全、多用户访问和多平台部署的企业级应用程序。它是由Sun Microsystems在2002...
- Xwork是WebWork2的基础,它实现了标准的Command模式。 - 完全脱离了Web层,可以独立于Web容器使用。 - 提供了核心功能,如拦截器、属性验证、类型转换等。 - **WebWork2**: - 建立在Xwork之上,主要处理HTTP...
1. `docs` 文件夹:这个目录下通常会有HTML格式的Nim文档,包括语言参考、教程、标准库文档等,是构建docset的基础。 2. `info.plist` 文件:这是一个配置文件,用于定义docset的元数据,如名称、作者、版本和图标等...
通过对《Java Web程序设计任务教程》第7章的学习,学生能够掌握Java Web开发的基本技能,为构建实际的Web应用程序打下坚实基础。通过实践这些知识点,他们可以创建功能丰富的、交互性强的Web应用,并且理解Web应用...
它实现了标准的Command模式,并且完全与Web层解耦,使得其可以应用于非Web环境下的应用程序。Xwork的关键特性包括: - **前端拦截器(Interceptor)**:用于在请求处理前和后执行一系列操作,如权限检查、日志记录...
* Rigidody.velocity:读者将学习如何使用 Rigidody.velocity,了解游戏对象的基本操作。 * 控制小案例:读者将学习如何编写小案例,了解游戏对象的基本操作。 * 鼠标指向的旋转:读者将学习如何使用鼠标指向的旋转...
Struts2是一个基于MVC(Model-View-Controller)架构的Java Web开发框架,它源自WebWork项目,并在WebWork2的基础上发展而来。Struts2的主要目标是提供一个更加灵活和强大的解决方案,以解决Struts1.x版本中存在的...
它在Struts1的基础上进行了很多改进,提供了更丰富的功能和更好的灵活性。本教程将深入介绍Struts2的基础知识,帮助初学者快速掌握这个框架。 1. **Struts2架构** Struts2的核心是Action类,它是业务逻辑处理的...
这本书的中文修正版源代码1提供了与书中的示例和教程对应的代码资源,帮助读者更好地理解和学习Struts框架的工作机制。 Apache Struts是一个基于Model-View-Controller (MVC)设计模式的开源Java Web应用程序框架。...
它在Struts1.x的基础上进行了重大改进,解决了前一版本存在的诸多问题,为开发者提供了更强大、灵活和易测试的解决方案。下面将详细讨论Struts2的关键特性和工作原理。 首先,Struts2的引入是为了解决Struts1.x中的...