freemarker简单使用示例
2015-06-12 10:47
260 查看
使用freemarker.jar
使用示例
使用示例
package com.test; import java.io.File; import java.io.IOException; import java.io.StringWriter; import java.util.HashMap; import java.util.Locale; import java.util.Map; import freemarker.template.Configuration; import freemarker.template.DefaultObjectWrapper; import freemarker.template.Template; public class FreemarkerHandler { protected static Configuration freemarkerConfig; private static FreemarkerHandler instance = new FreemarkerHandler(); public static void main(String[] args){ Map<String, Object> root = new HashMap<String, Object>(); root.put("user", "joe"); root.put("sex", "男"); FreemarkerHandler.getInstance("/where/your/store/templates").docXmlBulider(root, "text.ftl"); } /** * @param rootPath 加载数据源的目录 */ public static FreemarkerHandler getInstance(String rootPath) { /** * 创建和调整配置 * 在整个应用的生命周期中,此操作应该只做一次 */ if (null == freemarkerConfig) { freemarkerConfig = new Configuration(); try { freemarkerConfig.setDirectoryForTemplateLoading(new File(rootPath)); freemarkerConfig.setObjectWrapper(new DefaultObjectWrapper()); freemarkerConfig.setEncoding(Locale.CHINA, "utf-8"); freemarkerConfig.setNumberFormat("#"); } catch (IOException e) { e.printStackTrace(); } } return instance; } /** * * @param entity 数据存放对象 * @param ftlName 模板(路径+名称) * @return */ public String docXmlBulider(Object entity, String ftlName) { StringWriter writer = new StringWriter(); String content = ""; try { /** * 获取或创建模板 * 在整个应用的生命周期中,这个工作可以执行多次 */ Template temp = freemarkerConfig.getTemplate(ftlName); // 模板和数据类型合并 temp.process(entity, writer); content = writer.toString(); } catch (Exception e) { e.printStackTrace(); } return content; } }
相关文章推荐
- shell注意事项
- 读《JavaScript dom编程艺术(第2版)》笔记 9-10
- win10系统电脑C盘磁盘碎片怎么清理?
- Compiler Error Message: The compiler failed with error code 128. 的问题解决
- 读《JavaScript dom编程艺术(第2版)》笔记 7-8
- 读《JavaScript dom编程艺术(第2版)》笔记 5-6
- uglifyjs随笔
- linux输出重定向1
- 读《JavaScript dom编程艺术(第2版)》笔记 3-4
- js中null undefined 空的区别
- 相等操作符
- 读《JavaScript dom编程艺术(第2版)》笔记 1-2
- 浏览器加载网页的顺序
- 关于windows.onload问题
- 瘦身长腿、日新小清新治愈系、lomo效果
- 五年“云游记”
- 海报、色彩、换脸、皮肤修复
- 制作羽毛扇
- ps画笔工具、填充选区文字工具、合成
- 绚丽照片墙效果