1、新建一个web工程,然后下载并引入freemarker-2.3.16.jar。
2、在E:\demo\freemarkerTes目录下新建:test.html文件(文件内容如下:)
3、编写一个测试类如下,执行就可以生成如下文件:test_result.html(文件内容如下:)
======================================================================
package com;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.HashMap;
import java.util.Map;
import freemarker.template.Configuration;
import freemarker.template.DefaultObjectWrapper;
import freemarker.template.Template;
public class FreeMarker {
public static void main(String[] args) throws Exception {
Configuration cfg = new Configuration();
//从什么地方加载freemarker模板文件
cfg.setDirectoryForTemplateLoading(new File("E:\\demo\\freemarkerTest"));
//定义Template对象
cfg.setObjectWrapper(new DefaultObjectWrapper());
//定义输出
Template temp = cfg.getTemplate("test.html");
Map root = new HashMap();
root.put("user", "davide");
Map latest = new HashMap();
root.put("latestProduct", latest);
latest.put("url", "products/greenmouse.html");
latest.put("name", "green mouse");
Writer out = new OutputStreamWriter(new FileOutputStream("E:/demo/freemarkerTest/test_result.html"));
//****最重要的就是这一步,动态加载“世界,你好”到abc所在的位置 .
temp.process(root, out);
out.flush();
out.close();
}
}
=========================================================================
2、 执行前的test.html
<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome ${user}!</h1>
<p>Our latest product:
<a href="${latestProduct.url}">${latestProduct.name}</a>!
</body>
</html>
===============================================================================
3、执行后的test_result.html
<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome davide!</h1>
<p>Our latest product:
<a href="products/greenmouse.html">green mouse</a>!
</body>
</html>