package main.java;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import java.io.StringWriter;
import java.util.ArrayList;
import java.util.Properties;
/**
* Created by kodulf on 2017/2/25.
*/
public class MyTest {
public static void main(String[] args){
VelocityEngine ve = new VelocityEngine();
Properties p = new Properties();
p.put(Velocity.FILE_RESOURCE_LOADER_PATH,"/Users/kodulf/500mi/VoleCityDemo/src/main/java");
ve.init(p);
Template template = ve.getTemplate("my.vm");
VelocityContext vc = new VelocityContext();
//有点像是http请求的样子
vc.put("name","零零漆");
vc.put("response","yes, 是的");
ArrayList<String> list = new ArrayList<>();
list.add("第一年1000万人民币利润");
list.add("第二年10个亿人民币利润");
list.add("第三年1000亿人民币利润");
vc.put("list",list);
StringWriter sw = new StringWriter();
template.merge(vc,sw);
//其实这个ve就相当于是c语言里面的printf(%f,%d)这样的,
System.out.println(sw.toString());
}
}my.vm:
hello world, my name is ${name}, I and the best of all;
Good luck!
I will get 1000000 dollars this year;
${response}
My company will grow very quick
#foreach($i in $list)
$i
#end
本文介绍了一个使用Java和Velocity模板引擎的简单示例。通过创建一个包含数据模型和模板文件的小型应用程序,演示了如何将数据填充到模板中并生成最终的输出。此示例涉及的主要概念包括VelocityEngine配置、VelocityContext的使用以及模板合并。
1019

被折叠的 条评论
为什么被折叠?



