码迷,mamicode.com
首页 > 编程语言 > 详细

java工程中使用freemarker例子

时间:2016-04-06 09:29:30      阅读:256      评论:0      收藏:0      [点我收藏+]

标签:

新建java project,引入freemarker.jar, 本工程是用的版本:freemarker-2.3.20 版本

java工程目录如下:
技术分享

test.ftl文件

Html代码  技术分享
  1. name : ${name}  
  2. age : ${age}  

 test类

Java代码  技术分享
  1. package com.freemarker;  
  2.   
  3. import java.io.File;  
  4. import java.io.IOException;  
  5. import java.io.OutputStreamWriter;  
  6. import java.io.Writer;  
  7. import java.util.HashMap;  
  8. import java.util.Map;  
  9.   
  10. import freemarker.template.Configuration;  
  11. import freemarker.template.Template;  
  12. import freemarker.template.TemplateException;  
  13.   
  14. public class Test {  
  15.     public static void main(String[] args) throws IOException, TemplateException {  
  16.   
  17.         //1.创建配置实例Cofiguration  
  18.         Configuration cfg = new Configuration();  
  19.   
  20.         //2.设置模板文件目录  
  21.         //(1)src目录下的目录(template在src下)  
  22.         //cfg.setDirectoryForTemplateLoading(new File("src/template"));  
  23.         //(2)完整路径(template在src下)  
  24.         //cfg.setDirectoryForTemplateLoading(new File(  
  25.         //      "D:/cpic-env/workspace/javaFreemarker/src/template"));  
  26.         //cfg.setDirectoryForTemplateLoading(new File("src/template"));  
  27.         //(3)工程目录下的目录(template/main在工程下)--推荐  
  28.         cfg.setDirectoryForTemplateLoading(new File("template/main"));  
  29.         //cfg.setObjectWrapper(new DefaultObjectWrapper());  
  30.         //获取模板(template)  
  31.         Template template = cfg.getTemplate("test.ftl");  
  32.         //建立数据模型(Map)  
  33.         Map<String, String> root = new HashMap<String, String>();  
  34.         root.put("name", "cxl");  
  35.         root.put("age", "25");  
  36.         //获取输出流(指定到控制台(标准输出))  
  37.         Writer out = new OutputStreamWriter(System.out);  
  38.         //StringWriter out = new StringWriter();  
  39.         //System.out.println(out.toString());  
  40.         //数据与模板合并(数据+模板=输出)  
  41.         template.process(root, out);  
  42.         out.flush();  
  43.     }  
  44. }  

 

运行结果:

Java代码  技术分享
  1. name : cxl  
  2. age : 25  

 
 

java工程中使用freemarker例子

标签:

原文地址:http://www.cnblogs.com/love540376/p/5357883.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!