velocityparser.java

来自「Velocity的实例应用」· Java 代码 · 共 64 行

JAVA
64
字号
package com.ibm.dvworks.velocity;import org.apache.velocity.app.Velocity;import org.apache.velocity.VelocityContext;import org.apache.velocity.Template;import java.io.*;public class VelocityParser  {      VelocityContext mainContext = null;      Template mainTemplate = null;      public VelocityParser(String templateFile)  {        try {            Velocity.init("velocity.properties");            mainTemplate = Velocity.getTemplate(templateFile);         }         catch( Exception ex ) {                System.out.println("Error processing template file: " + templateFile );          }      }      public void addToContext(String key, Object value) {          if (mainContext == null)              mainContext = new VelocityContext();           mainContext.put(key, value);     }      public void addToContext(VelocityContext chainCtx) {          mainContext = new VelocityContext(chainCtx);      }      public VelocityContext getCurrentContext() {         return mainContext;         }           public void processTemplate() {         try {            BufferedWriter writer = writer = new BufferedWriter(                new OutputStreamWriter(System.out));            if ( mainTemplate != null)                mainTemplate.merge(mainContext, writer);            writer.flush();            writer.close();        }        catch( Exception ex )    {           ex.printStackTrace();        }    }    public static void main(String[] args)    {        VelocityParser velInstance = new VelocityParser(args[0]);        velInstance.addToContext(  "treeFarm", new String [] { "redwood", "maple", "oak", "pine" });        velInstance.addToContext( "title", "A Tree Farm");        velInstance.addToContext( "date", new java.util.Date());        velInstance.addToContext("fmtr",         new org.apache.velocity.app.tools.VelocityFormatter(                  velInstance.getCurrentContext()));        velInstance.processTemplate();                 }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?