1.在D盘下创建一个目录D:\freemarker
2.在以上目录中放入一个模板文件test.ftl,内容如下:
第一个测试程序:${abc}
3.java代码如下(需要导入freemarker.jar包)
Java代码 :
package cn.freeteam.util; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.PrintWriter; import java.util.HashMap; import java.util.Map; import freemarker.template.Configuration; import freemarker.template.DefaultObjectWrapper; import freemarker.template.Template; import freemarker.template.TemplateExceptionHandler; public class FreeMarkerTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String dir = "D:\freemarker"; try { Configuration cfg = new Configuration(); //从什么地方加载freemarker模板文件 cfg.setDirectoryForTemplateLoading(new File(dir)); //设置对象包装器 cfg.setObjectWrapper(new DefaultObjectWrapper()); //设置异常处理器 cfg.setTemplateExceptionHandler(TemplateExceptionHandler.IGNORE_HANDLER); //定义Template对象 Template template = cfg.getTemplate("test.ftl"); //定义数据 Map root = new HashMap(); root.put("abc", "世界,你好"); //定义输出 PrintWriter out = new PrintWriter( new BufferedWriter( new FileWriter(dir+"\out.txt") ) ); //****最重要的就是这一步,动态加载“世界,你好”到abc所在的位置 template.process(root, out); } catch (Exception e) { e.printStackTrace(); } } }
4.执行以上代码,会在D:\freemarker\下生成一个文件out.txt
内容为:
第一个测试程序:世界,你好