java Velocity 同时初始化两个 Engine 实例

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

两个不同的 Velocity Engine 实例,使用不同的配置

VelocityEngineTest.java

import java.io.StringWriter;
import java.io.Writer;
import java.util.Properties;

import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.VelocityEngine;

public class VelocityEngineTest {

  private static final String TEMPLATE_NAME = "VelocityEngineTest.vm";

  public static void main(String[] args) throws Exception {
    Properties p1 = new Properties();
    p1.put("resource.loader", "file");
    p1.put("file.resource.loader.class",
        "org.apache.velocity.runtime.resource.loader.FileResourceLoader");
    p1.put("file.resource.loader.path", "./src/ve1");

    Properties p2 = new Properties();
    p2.put("resource.loader", "file");
    p2.put("file.resource.loader.class",
        "org.apache.velocity.runtime.resource.loader.FileResourceLoader");
    p2.put("file.resource.loader.path", "./src/ve2");

    //now create the engines
    VelocityEngine ve1 = new VelocityEngine();
    ve1.init(p1);

    VelocityEngine ve2 = new VelocityEngine();
    ve2.init(p2);

    // now get the output for each engine
    writeTemplateOutput(ve1);
    writeTemplateOutput(ve2);

  }

  public static void writeTemplateOutput(VelocityEngine ve) throws Exception {
    Template t = ve.getTemplate(TEMPLATE_NAME);

    Writer writer = new StringWriter();
    t.merge(new VelocityContext(), writer);

    System.out.println(writer.toString());
  }
}

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:java.nio.channels.Pipe使用例子

下一篇:Java实现简单的HTTP服务器