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

aa.ftl

  1. name : ${name}
  2. age : ${age}

aa.java

  1. package mall_tools;
  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 Aaa {
  15.  
  16. public static void main(String[] args) throws IOException, TemplateException {
  17.  
  18. // 1.创建配置实例Cofiguration
  19. Configuration cfg = new Configuration();
  20.  
  21. // 2.设置模板文件目录
  22. // (1)src目录下的目录(template在src下)
  23. // cfg.setDirectoryForTemplateLoading(new File("src/template"));
  24. // (2)完整路径(template在src下)
  25. // cfg.setDirectoryForTemplateLoading(new File(
  26. // "D:/cpic-env/workspace/javaFreemarker/src/template"));
  27. // cfg.setDirectoryForTemplateLoading(new File("src/template"));
  28. // (3)工程目录下的目录(template/main在工程下)--推荐
  29. cfg.setDirectoryForTemplateLoading(new File("./src/main/resources"));
  30. // cfg.setObjectWrapper(new DefaultObjectWrapper());
  31. // 获取模板(template)
  32. Template template = cfg.getTemplate("aa.ftl");
  33. // 建立数据模型(Map)
  34. Map<String, Object> root = new HashMap<>();
  35. root.put("name", "cxl");
  36. root.put("age", "25");
  37. // 获取输出流(指定到控制台(标准输出))
  38. Writer out = new OutputStreamWriter(System.out);
  39. // StringWriter out = new StringWriter();
  40. // System.out.println(out.toString());
  41. // 数据与模板合并(数据+模板=输出)
  42. template.process(root, out);
  43. out.flush();
  44. }
  45. }

生成结果:

name : cxl
age : 25

java根据freeMark模板生成内容的更多相关文章

  1. java通过word模板生成word文档

    介绍 上次公司项目需要一个生成word文档的功能,有固定的模板根据业务填充数据即可,由于从来没做过,项目也比较着急于是去网上找有没有合适的工具类,找了好几种,看到其中有freeMark模板生成比较靠谱 ...

  2. Java根据Freemarker模板生成Word文件

    1.  准备模板 模板 + 数据 = 模型 1.将准备好的Word模板文件另存为.xml文件(PS:建议使用WPS来创建Word文件,不建议用Office) 2.将.xml文件重命名为.ftl文件 3 ...

  3. java通过FreeMarker模板生成Excel文件之.ftl模板制作

    关于怎么通过freemarker模板生成excel的文章很多,关键点在于怎么制作模板文件.ftl 网上的办法是: (1)把Excel模板的格式调好,另存为xml文件 (2)新建一个.ftl文件,把xm ...

  4. JAVA Freemarker + Word 模板 生成 Word 文档 (普通的变量替换,数据的循环,表格数据的循环,以及图片的东替换)

    1,最近有个需求,动态生成 Word 文当并供前端下载,网上找了一下,发现基本都是用 word 生成 xml 然后用模板替换变量的方式 1.1,这种方式虽然可行,但是生成的 xml 是在是太乱了,整理 ...

  5. java 根据html模板生成html文件

    1.代码部分 import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.test. ...

  6. FreeMarker之根据模板生成Java代码

    FreeMarker根据模板生成Java代码,光这句话,大家想必也知道它的应用了,比如流行的DRY原则,该原则的意思,可简单概述为"不要写重复的代码". 比如Java中三层架构,数 ...

  7. java根据模板生成pdf

    原文链接:https://www.cnblogs.com/wangpeng00700/p/8418594.html 在网上看了一些Java生成pdf文件的,写的有点乱,有的不支持写入中文字体,有的不支 ...

  8. Java使用 VelocityEngine模板引擎快速生成HTML等各种代码

    https://blog.csdn.net/icannotdebug/article/details/79725297 一.简介 Velocity 是一个基于 Java 的模板引擎框架,提供的模板语言 ...

  9. java使用freemark生成word/pdf

    目录 一. 背景 二.实现的技术选型以及遇到的坑 三.最终的效果 2.1 .doc word效果展示 2.1 .docx word效果展示 2.2 docx word转pdf效果展示 三.准备工作及代 ...

随机推荐

  1. div 加滚动条的方法

    div 加滚动条的方法: <div style="position:absolute; height:400px; overflow:auto"></div> ...

  2. 51nod 1276 【离线化】

    思路1.: 离线处理: 具体就是把岛屿离线然后按照高度排序,把query按照从高到低排序,然后每次query只要从最高的岛屿开始找起,判断条件:如果他旁边都是没有被找过的(也就是默认是海),那么数量+ ...

  3. POJ3616【基础DP】

    //因为同一点结束的时间段会有多个,这里没考虑: //无限wa: const int N=1e6+7; int b[N]; LL a[N]; LL dp[N]; struct asd{ int s; ...

  4. Linux下自动还原MySQL数据库的Shell脚本

    创建shell脚本topjui_source.exp,内容如下: #!/usr/bin/expect spawn echo "###### running... ######" s ...

  5. [LuoGu]P2664 树上游戏

    Portal 这题真的好. 看到树上路径, 脑子里就要点分治 这一题对于每个点都要计算一遍, 如果暴算实在不好算, 这样我们就可以考虑算贡献. 直接计算每种颜色的贡献. 因为一条过重心的路径中, 可能 ...

  6. 为什么站点使用https加密之后还能看到相关数据

    为什么站点使用了https加密之后,还是能够用firebug之类的软件查看到提交到的信息,并且还是明文的?例如说这样: 这是因为:https(ssl)加密是发生在应用层与传输层之间,所以在传输层看到的 ...

  7. Sereja and Brackets(括号匹配)

    Description Sereja has a bracket sequence s1, s2, ..., sn, or, in other words, a string s of length  ...

  8. Eclipse Neon Java版本安装Java EE插件

    Help→Install New Software 地址:Neon - http://download.eclipse.org/releases/neon/201703231000 选择  Web,X ...

  9. rhel 6.5--samba

    配置匿名共享: 服务端: [root@master ~]# yum install -y samba 或者 [root@master ~]# yum groupinstall -y "CIF ...

  10. PowerShell~文件操作和对象遍历

    ps提供了丰富的文件操作,如建立,删除,改名,移动,复制,文件夹建立,显示文件列表,同时对数组对象的遍历也很方便,如果在使用PS脚本时,希望现时传入参数,可以把参数声明为param,当然需要把它写在文 ...