1.添加依赖
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>
2.新建模版文件
3.classpath方式加载模版文件
public static void main(String[] args) {
Properties p = new Properties();
p.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
p.setProperty(VelocityEngine.RESOURCE_LOADER, "class");
p.setProperty(VelocityEngine.INPUT_ENCODING, "UTF8");
p.setProperty(VelocityEngine.OUTPUT_ENCODING, "UTF8");
VelocityEngine velocityEngine = new VelocityEngine();
velocityEngine.init(p);
VelocityContext context = new VelocityContext();
context.put("name", new String("Velocity"));
Template template = null;
try {
template = velocityEngine.getTemplate("mytemplate.vm");
} catch (Exception ignored) {
}
StringWriter sw = new StringWriter();
assert template != null;
template.merge(context, sw);
System.out.println(sw.toString());
}
4.file方式加载模版文件
public static void main(String[] args) {
Properties p = new Properties();
p.setProperty(VelocityEngine.FILE_RESOURCE_LOADER_PATH, "/Users/icefox/Documents/sofastack/singleton/src/main/resources");
p.setProperty(VelocityEngine.RESOURCE_LOADER, "file");
p.setProperty(VelocityEngine.INPUT_ENCODING, "UTF8");
p.setProperty(VelocityEngine.OUTPUT_ENCODING, "UTF8");
VelocityEngine velocityEngine = new VelocityEngine();
velocityEngine.init(p);
VelocityContext context = new VelocityContext();
context.put("name", "Velocity");
Template template = null;
try {
template = velocityEngine.getTemplate("mytemplate.vm");
} catch (Exception ignored) {
}
StringWriter sw = new StringWriter();
assert template != null;
template.merge(context, sw);
System.out.println(sw.toString());
}
5.控制台输出