FreeMaker是一个优秀的模板引擎,负责将数据合并到模板中,从而生成标准输出。FreeMaker非常适合用于MVC的WEB应用中,对于FreeMaker而言,等式:模板+数据模型=输出
下面我们开始编写第一个JAVA工程的程序
首先在工程SRC目录下新建一个template文件夹,然后新建一个test.ftl文件。
我的template文件夹的目录是“D://workspace//FreeMaker//WebRoot//WEB-INF//classes//template”
1.test.ftl
${name},您好!${msg}
2.新建一个HelloWorld.java
package com.test;
import java.io.File;
import java.io.OutputStreamWriter;
import java.util.HashMap;
import java.util.Map;
import freemarker.template.Configuration;
import freemarker.template.Template;
public class HelloWorld {
/**
* @param args
*/
private Configuration cfg;
public void init() throws Exception
{
cfg = new Configuration();
cfg.setDirectoryForTemplateLoading(new File("D://workspace//FreeMaker//WebRoot//WEB-INF//classes//template"));//加载模板文件的目录
}
public void process() throws Exception
{
Map root = new HashMap();
root.put("name","张三");//对应模板文件中的${name}
root.put("msg", "哦也!");//对应模板文件中的${msg}
Template t = cfg.getTemplate("test.ftl");
t.process(root,new OutputStreamWriter(System.out));
}
public static void main(String[] args) {
// TODO Auto-generated method stub
HelloWorld h = new HelloWorld();
try {
h.init();
h.process();
} catch (Exception e) {
e.printStackTrace();
}
}
}