zoukankan      html  css  js  c++  java
  • FreeMarker的使用

    引入的jar包:

    1 import freemarker.core.Environment;
    2 import freemarker.core.TemplateElement;
    3 import freemarker.ext.beans.StringModel;
    4 import freemarker.template.Configuration;
    5 import freemarker.template.Template;
    6 import freemarker.template.TemplateModelException;
    7 import freemarker.template.TemplateSequenceModel;

    简单的代码的例子:

     1 @Resource
     2     private FreeMarkerConfigurer freemarkerConfigurer;
     3     
     4     @Resource
     5     private ServletContext servletContext;
     6 
     7     public String getPraseHtmlFormTemplate(String templateString,Map<String, Object> paramMap, boolean readOnly,
     8             IInitCallback initCallback,boolean preview) {
     9         return praseHtmlFormTemplate(templateString, paramMap, readOnly, initCallback,preview);
    10     }
    11     
    12     protected String praseHtmlFormTemplate(String templateString, 
    13             Map<String, Object> paramMap, boolean readOnly,IInitCallback initCallback,boolean preview) {
    14         Configuration cfg =freemarkerConfigurer.getConfiguration();
    15         cfg.setCustomAttribute("initCallback", initCallback);
    16         cfg.setCustomAttribute("readOnly", readOnly);
    17         cfg.setCustomAttribute("preview", preview);
    18         cfg.setTemplateLoader(new StringTemplateLoader(templateString)); 
    19         Template template;
    20         try {
    21             template = cfg.getTemplate("");
    22             StringWriter writer = new StringWriter();
    23             Environment env = template.createProcessingEnvironment(paramMap, writer); 
    24             env.setCustomAttribute("paramMap", paramMap);
    25             env.process(); 
    26             return writer.toString();
    27         } catch (Exception e) {
    28             logger.error("解析模板文件错误:" + e.getMessage());
    29             e.printStackTrace();
    30         }
    31         return "";
    32     }
  • 相关阅读:
    StarUML 破解方法
    String、StringBuilder、StringBuffer对比
    ThreadLocal源码
    编程思想——访问权限控制
    设计模式——调停者模式
    Abp.vNext 权限备注
    Abp 中 模块 加载及类型自动注入 源码学习笔记
    使用 ZipArchive 生成Zip文件备注
    ORACLE 连接SQLSERVER 数据库备忘
    FastReport 自定义数据集
  • 原文地址:https://www.cnblogs.com/lishupeng/p/5494347.html
Copyright © 2011-2022 走看看