(java入门)Velocity最简略例程
(java入门)Velocity最简单例程
一,前言
在编程中总会用到 “文本模板”+“数据” 来生成新的文本的情况。
最常用的就是 WebUI 在 HTML 文本中嵌入数据。除了 Web 应用中,还有些实用的方面,比如,自动返信。
Apache的Velocity能帮助我们解决这些问题。
二,环境与相关资料
#Velocity1.7 :http://velocity.apache.org/download.cgi
#VTL :http://www.jajakarta.org/velocity/velocity-1.2/docs/vtl-reference-guide.html
三,例程
#Jar列表
velocity-1.7.jar
velocity-1.7-dep.jar
package net.dncsoft.sample.velocity; import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; import java.util.ArrayList; import java.util.List; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; public class MainVelocity { public static void main(String[] args) throws IOException { Velocity.init(); VelocityContext ctx = new VelocityContext(); ctx.put("title", "Hello Velocity"); List<String> list = new ArrayList<String>(); list.add("I am TianYu."); list.add("Hello Java."); list.add("Hello C#."); ctx.put("items", list); BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(System.out)); Template template = Velocity.getTemplate("hello.vm"); template.merge(ctx, writer); writer.flush(); } }
$title #foreach($name in $items) $name #end