FreeMarker 是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML 网页、电子邮件、配置文件、源代码等)的通用工具。 它不是面向最终用户的,而是一个 Java 类库,是一款程序员可以嵌入他们所开发产品的组件。 使用步骤:
第一步:创建一个 Configuration 对象,直接 new 一个对象。构造方法的参数就是 freemarker 的版本号 第二步:设置模板文件所在的路径 第三步:设置模板文件使用的字符集;一般为 utf-8 第四步:获取模板 第五步:创建一个模板使用的数据集,可以是 pojo 也可以是 map;一般是 Map 第六步:创建一个 Writer 对象,一般创建 FileWriter对象,指定生成的文件名第七步:调用模板对象的 process 方法输出文件 第八步:关闭流
代码案例:
创建itcast-freemarker\src\test\java\cn\itcast\freemarker\FreeMarkerTest.java [Java] 纯文本查看 复制代码 public class FreeMarkerTest {
@Test
public void test() throws Exception {
// 创建配置对象
Configuration configuration = new Configuration(Configuration.getVersion());
// 设置默认生成文件编码
configuration.setDefaultEncoding("utf-8");
// 设置模板路径
configuration.setClassForTemplateLoading(FreemarkerTest.class, "/ftl");
// 获取模板
Template template = configuration.getTemplate("test.ftl"); // 加载数据
Map<String, Object> dataModel = new HashMap<>();
dataModel.put("name", "传智播客");
dataModel.put("message", "欢迎使用 Freemarker。");
// 创建输出对象
FileWriter fileWriter = new FileWriter("D:\\itcast\\test\\test.html");
// 渲染模板和数据
template.process(dataModel, fileWriter);
// 关闭输出
fileWriter.close();
}
}
|