`

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

阅读更多
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已经完成。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics