velocity基础教程--1.标准使用

来源:互联网 发布:windows系统购买 编辑:程序博客网 时间:2024/06/06 02:25
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已经完成。
0 0