velocity(1)——hello world

velocity是一个基于java的模板引擎,与freemarker齐名,下面写一个velocity的hello world的demo。

1、maven依赖

<properties>
    <velocity.version>1.7</velocity.version>
</properties>
<dependencies>
    <dependency>
        <groupId>org.apache.velocity</groupId>
        <artifactId>velocity</artifactId>
        <version>${velocity.version}</version>
    </dependency>
</dependencies>

2、代码

package com.mipo;
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 T {
public static void main(String[] args) {
    // 初始化模板引擎
    VelocityEngine velocityEngine = new VelocityEngine();
    velocityEngine.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath");
    velocityEngine.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName());
    velocityEngine.init();
    // 获取模板文件
    Template template = velocityEngine.getTemplate("helloworld.vm");
    // 设置变量
    VelocityContext velocityContext = new VelocityContext();
    velocityContext.put("name", "world");
    List<String> list = new ArrayList<String>();
    list.add("jack");
    list.add("kitty");
    velocityContext.put("list", list);
    // 输出
    StringWriter stringWriter = new StringWriter();
    template.merge(velocityContext, stringWriter);
    System.out.println(stringWriter.toString());
}
}

首先,我们在代码中初始化了VelocityEngine这个模板引擎,对其设置参数进行初始化,指定使用ClasspathResourceLoader来加载vm文件。然后我们就可以往VelocityContext这个Velocity容器中存放对象了,在vm文件中我们可以取出这些变量,从而进行模板输出。
3、输出

hello world
jack
kitty

hello world 
jack
kitty
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容