Struts2本身就有freemarker的jar包,所以我们就没必要再引入。开始第一个例子:
1. 首先建立一个单元测试类,如下:
- package cn.com.leadfar.struts2.freemarker;
- import java.io.File;
- import java.io.FileWriter;
- import java.io.Writer;
- import java.util.HashMap;
- import java.util.Map;
- import junit.framework.TestCase;
- import freemarker.template.Configuration;
- import freemarker.template.Template;
- public class FreemarkerTest extends TestCase{
- public void testFreemarker01() throws Exception{
- String dir = "E:/eclipse/workspace/struts2/struts2_01/src/cn/com/leadfar/struts2/freemarker";
- Configuration cfg = new Configuration();
- //从什么地方加载模板文件
- cfg.setDirectoryForTemplateLoading(new File(dir));
- //加载模板
- Template template = cfg.getTemplate("test01.ftl");
- //定义数据
- Map root = new HashMap();
- root.put("stringvalue", "世界你好");
- //定义输出
- Writer out = new FileWriter(dir+"/test01_out.txt");
- template.process(root, out);
- out.flush();
- out.close();
- }
- }
2. 在当前测试类下建立一个文件,test01.ftl。这是freemarker模板文件,其后缀名习惯用ftl,意思是freemarker template language(freemarker模板语言)。其内容如下:
第一个Freemarker测试,${stringvalue}
3.运行上面的方法即可在当前类路径下得到一个文件test01_out.txt,内容为:
第一个Freemarker测试,世界你好