zoukankan      html  css  js  c++  java
  • java根据freeMark模板生成内容

    根据ftl模板生成文件内容可以用来生成代码模板,如下所示:

    aa.ftl

    name : ${name}  
    age : ${age} 

    aa.java

    package mall_tools;
    
    import java.io.File;
    import java.io.IOException;
    import java.io.OutputStreamWriter;
    import java.io.Writer;
    import java.util.HashMap;
    import java.util.Map;
    
    import freemarker.template.Configuration;
    import freemarker.template.Template;
    import freemarker.template.TemplateException;
    
    public class Aaa {
    
        public static void main(String[] args) throws IOException, TemplateException {
    
            // 1.创建配置实例Cofiguration
            Configuration cfg = new Configuration();
    
            // 2.设置模板文件目录
            // (1)src目录下的目录(template在src下)
            // cfg.setDirectoryForTemplateLoading(new File("src/template"));
            // (2)完整路径(template在src下)
            // cfg.setDirectoryForTemplateLoading(new File(
            // "D:/cpic-env/workspace/javaFreemarker/src/template"));
            // cfg.setDirectoryForTemplateLoading(new File("src/template"));
            // (3)工程目录下的目录(template/main在工程下)--推荐
            cfg.setDirectoryForTemplateLoading(new File("./src/main/resources"));
            // cfg.setObjectWrapper(new DefaultObjectWrapper());
            // 获取模板(template)
            Template template = cfg.getTemplate("aa.ftl");
            // 建立数据模型(Map)
            Map<String, Object> root = new HashMap<>();
            root.put("name", "cxl");
            root.put("age", "25");
            // 获取输出流(指定到控制台(标准输出))
            Writer out = new OutputStreamWriter(System.out);
            // StringWriter out = new StringWriter();
            // System.out.println(out.toString());
            // 数据与模板合并(数据+模板=输出)
            template.process(root, out);
            out.flush();
        }
    }

    生成结果:

    name : cxl
    age : 25

  • 相关阅读:
    Spring定时任务注解实现定时清空指定文件夹下的文件
    设计模式之单例模式
    在cmd下使用imp命令导入oracle的dmp文件报错ORA-02304
    多态是什么干嘛的
    qt编辑器的问题
    qt中文格式GBK.UTF-8,unicode 之间的转换
    mysql 安装及设置
    mysql触发器
    转载 java开发基础 https://blog.csdn.net/jiangjiewudi/article/details/9565749
    测试 转载
  • 原文地址:https://www.cnblogs.com/wulm/p/10894283.html
Copyright © 2011-2022 走看看