velocity 学习之HelloWorld

2017-09-03  本文已影响0人  Men叔

Velocity是一个基于Java的模板引擎。它允许任何人使用简单而强大的模板语言来引用Java代码中定义的对象。
当Velocity用于Web开发时,Web设计人员可以与Java程序员并行工作,以根据模型 - 视图 - 控制器(MVC)模型开发Web站点,这意味着网页设计人员可以专注于创建一个看起来很好的站点,程序员可以专注于编写一流的代码。
Velocity将Java代码与网页分开,使网站在其生命周期内更加可维护,并为
Java Server Pages(JSP)或PHP提供了可行的替代方案。Velocity的功能远远超出了网络的范围;
例如,它可以用于从模板生成SQL,PostScript和XML。
它可以用作生成源代码和报告的独立实用程序,也可以用作其他系统的集成组件。
例如,Velocity为各种Web框架提供模板服务,使他们能够根据真正的MVC模型,使视图引擎促进Web应用程序的开发。
摘自官方文档(http://velocity.apache.org/engine/devel/overview.html
官方文档很详细,可以根据官方文档进行学习

        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity</artifactId>
            <version>1.7</version>
        </dependency>
2

hellovellocity.vm

hello ${name} 
package cn.test01;

import java.io.StringWriter;
import java.util.ArrayList;
import java.util.List;

import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.runtime.RuntimeConstants;
import org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader;

public class HelloVelocity {
    
    public static void main(String[] args) {
        // 初始化模板引擎
        VelocityEngine ve = new VelocityEngine();
        ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath");
        ve.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName());
        ve.init();
        // 获取模板文件
        Template template = ve.getTemplate("hellovelocity.vm");
        VelocityContext velocityContext = new VelocityContext();
         // 设置变量
        velocityContext.put("name", "zhangsan");
        // 输出
        StringWriter sw = new StringWriter();
        t.merge(velocityContext,sw);
        System.out.println(sw.toString());
    }
}

总结:velocity模板引擎的学习,主要在于VTL语句,也就是如何编写vm 文件,具体可参考:http://blog.csdn.net/nengyu/article/details/6671904
http://velocity.apache.org/engine/devel/user-guide.html#about-this-guide

上一篇下一篇

猜你喜欢

热点阅读