zoukankan      html  css  js  c++  java
  • JAVA FreeMarker工具类

    FreeMarkerUtil.java

     1 package pers.kangxu.datautils.utils;
     2 
     3 import java.io.File;
     4 import java.io.StringWriter;
     5 import java.util.Map;
     6 
     7 import pers.kangxu.datautils.common.Constants;
     8 
     9 import freemarker.template.Configuration;
    10 import freemarker.template.Template;
    11 
    12 /**
    13  * 
    14  * <b>
    15  *    FreeMarkerUtil 模板工具
    16  * </b>
    17  * @author kangxu
    18  *
    19  */
    20 public class FreeMarkerUtil {
    21     
    22     /**
    23      * 
    24      * TODO
    25      * <br>
    26      * @author kangxu2 2016-11-23
    27      *
    28      * @param fltFile  flt文件名
    29      * @param templatePath flt文件路径   src/template
    30      * @param datas 数据集合
    31      * @return
    32      */
    33     public static String geneFileStr(String fltFile,String templatePath,Map<String, Object> datas){
    34         
    35         Configuration cfg = new Configuration();
    36         try {
    37             cfg.setDirectoryForTemplateLoading(new File(templatePath));
    38             Template template = cfg.getTemplate(fltFile,Constants.ENCODING);
    39             template.setEncoding(Constants.ENCODING);
    40             
    41             StringWriter out = new StringWriter();  
    42             
    43             template.process(datas, out);  
    44             
    45             out.flush();
    46             out.close();
    47             
    48             return out.getBuffer().toString();
    49             
    50             
    51         } catch (Exception e) {
    52             e.printStackTrace();
    53         } 
    54         
    55         return null;
    56         
    57     }
    58  
    59 }

     使用方式 FreeMarkerUtilTester.java

     1 package pers.kangxu.datautils.test;
     2 
     3 import java.util.HashMap;
     4 import java.util.Map;
     5 
     6 import pers.kangxu.datautils.common.verifycode.BuildVerifyCode;
     7 import pers.kangxu.datautils.utils.FreeMarkerUtil;
     8 
     9 public class FreeMarkerUtilTester {
    10 
    11     public static void main(String[] args) {
    12         Map<String, Object> datas = new HashMap<String, Object>();
    13         datas.put("code", BuildVerifyCode.generateVerifyCode(4));
    14         System.out.println(FreeMarkerUtil.geneFileStr("sms.flt","template",datas));
    15     }
    16 }

    sms.flt

     1 您的验证码是:${code}。请不要把验证码泄露给其他人。 

    运行结果

     

    学习无止尽,代码我疯狂
  • 相关阅读:
    css 控制溢出文本显示省略号效果
    限制input 文本框复制粘贴
    charCodeAt()方法
    背景全透明 background: transparent
    jQuery 双击事件(dblclick)时,不触发单击事件(click)
    html textarea(文本域)自动换行
    input 文本框无法输入 有光标
    双击鼠标滚动屏幕的代码
    ABP 日志审计 返回值开启 循环引用序列化异常 Self referencing loop detected
    浏览器相关知识点一(前端面试准备)
  • 原文地址:https://www.cnblogs.com/kangxu/p/6248747.html
Copyright © 2011-2022 走看看