java Velocity 同时初始化两个 Engine 实例详解编程语言

两个不同的 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()); 
  } 
}

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/10472.html

(0)
上一篇 2021年7月19日 10:14
下一篇 2021年7月19日 10:14

相关推荐

发表回复

登录后才能评论