Velocity JAVA引擎模板 (六) 输出到文件
程序员文章站
2022-05-02 20:27:46
...
Velocity JAVA引擎模板 (六) 输出到文件
本文是【条件语句】demo
java
/**
* 输出到文件
*/
@Test
public void test6() throws IOException {
//1 加载配置
Properties properties = new Properties();
properties.load(Test.class.getClassLoader().getResourceAsStream("velocity.properties"));
Velocity.init(properties);
//2 创建上下文对象
VelocityContext context = new VelocityContext();
//2 将数据对象添加到此上下文中
context.put("title", "赵先森");
context.put("body", "这是内容");
//4选择模板
Template template = Velocity.getTemplate("./src/test/resources/template/test5.vm");
//4创建文件
File saveFile = new File("D:\\idea_workspace\\hp-generator\\src\\test\\resources\\template\\test5.html");
//获得它的父类文件,如果不存在,就创建
if (!saveFile.getParentFile().exists()) {
saveFile.getParentFile().mkdirs();
}
//创建文件输出流
FileOutputStream outStream = new FileOutputStream(saveFile);
//因为模板整合的时候,需要提供一个Writer,所以创建一个Writer
OutputStreamWriter writer = new OutputStreamWriter(outStream);
//创建一个缓冲流
BufferedWriter bufferWriter = new BufferedWriter(writer);
//5 合并模板和数据并输出
template.merge(context, bufferWriter);
//强制刷新
bufferWriter.flush();
outStream.close();
bufferWriter.close();
}
模板 test5.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>$title</title>
</head>
<body>
$body
</body>
</html>