首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Velocity模版发动机的小例子(带绝对路径的)

2012-12-26 
Velocity模版引擎的小例子(带绝对路径的)本例子是访问:D:\3.0_BCSHOP-3106\product\example.vm下模版packa

Velocity模版引擎的小例子(带绝对路径的)

本例子是访问:D:\3.0_BCSHOP-3106\product\example.vm下模版

package com.bcgogo.product.model;import org.apache.velocity.*;import org.apache.velocity.Template;import org.apache.velocity.app.Velocity;import org.apache.velocity.app.VelocityEngine;import org.apache.velocity.exception.ParseErrorException;import org.apache.velocity.exception.ResourceNotFoundException;import org.apache.velocity.runtime.resource.loader.StringResourceLoader;import org.apache.velocity.runtime.resource.util.StringResourceRepository;import java.io.BufferedWriter;import java.io.OutputStreamWriter;import java.util.ArrayList;import java.util.Properties;/** * Created by IntelliJ IDEA. * User: WWW * Date: 12-9-3 * Time: 上午9:58 * To change this template use File | Settings | File Templates. */public class Example {  public Example() {    try {      /*      * setup      */      Properties p = new Properties();      p.setProperty("runtime.log", "velocity.log");        p.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, "D:\\3.0_BCSHOP-3106\\product");      Velocity.init(p);      /*      *  Make a context object and populate with the data.  This      *  is where the Velocity engine gets the data to resolve the      *  references (ex. $list) in the template      */      VelocityContext context = new VelocityContext();      context.put("list", getNames());      /*      *  get the Template object.  This is the parsed version of your      *  template input file.  Note that getTemplate() can throw      *   ResourceNotFoundException : if it doesn't find the template      *   ParseErrorException : if there is something wrong with the VTL      *   Exception : if something else goes wrong (this is generally      *        indicative of as serious problem...)      */      Template template = null;      try {        template = Velocity.getTemplate("/example.vm");      } catch (ResourceNotFoundException rnfe) {        System.out.println("Example : error : cannot find template "  );      } catch (ParseErrorException pee) {        System.out.println("Example : Syntax error in template " + ":" + pee);      }      /*      *  Now have the template engine process your template using the      *  data placed into the context.  Think of it as a  'merge'      *  of the template and the data to produce the output stream.      */      BufferedWriter writer = new BufferedWriter(          new OutputStreamWriter(System.out));      if (template != null)        template.merge(context, writer);      /*      *  flush and cleanup      */      writer.flush();      writer.close();    } catch (Exception e) {      System.out.println(e);    }  }  public ArrayList getNames() {    ArrayList list = new ArrayList();    list.add("ArrayList element 1");    list.add("ArrayList element 2");    list.add("ArrayList element 3");    list.add("ArrayList element 4");    return list;  }  public static void main(String[] args) {    Example t = new Example();  }}

热点排行