A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

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();
  }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马