From 881f273bca0f94345efb2c0cac52279af4a7f4e4 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 24 九月 2021 15:16:08 +0800
Subject: [PATCH] 后台管理自动化代码生成

---
 src/main/java/org/yeshi/utils/FreemarkerUtils.java |   29 +++++++++++++++++++++++++++--
 1 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/yeshi/utils/FreemarkerUtils.java b/src/main/java/org/yeshi/utils/FreemarkerUtils.java
index 7227ce3..c552804 100644
--- a/src/main/java/org/yeshi/utils/FreemarkerUtils.java
+++ b/src/main/java/org/yeshi/utils/FreemarkerUtils.java
@@ -6,6 +6,8 @@
 import org.apache.commons.io.IOUtils;
 
 import java.io.*;
+import java.util.Iterator;
+import java.util.List;
 import java.util.Map;
 
 public class FreemarkerUtils {
@@ -54,17 +56,40 @@
         return generateString(data, str);
     }
 
+
+    public static String generateInputStream(Object data, String name, Map<String, InputStream> templateStreams) throws IOException {
+        String result = null;
+        try {
+            StringTemplateLoader stringTemplateLoader = new StringTemplateLoader();
+            for (Iterator<String> its = templateStreams.keySet().iterator(); its.hasNext(); ) {
+                String key = its.next();
+                stringTemplateLoader.putTemplate(key, IOUtils.toString(templateStreams.get(key), "UTF-8"));
+            }
+            cfg.setTemplateLoader(stringTemplateLoader);
+            Template template = cfg.getTemplate(name, defaultCharacter);
+            StringWriter out = new StringWriter();
+            template.process(data, out);
+            out.flush();
+            result = out.toString();
+            out.close();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return result;
+    }
+
+
     /**
      * 灏嗘ā鏉挎覆鏌撲互鍚庝繚瀛樺埌鏂囦欢
      *
      * @param templateFileDir  妯℃澘鐩綍
      * @param templateFileName 妯℃澘鏂囦欢鍚嶇О
      * @param targetFilePath   娓叉煋鍚庢枃浠跺悕绉�
-     * @param data          鏁版嵁
+     * @param data             鏁版嵁
      * @return
      */
     public static boolean renderingTemplateAndGenerateFile(String templateFileDir,
-                                                           String templateFileName, String targetFilePath,Object data) {
+                                                           String templateFileName, String targetFilePath, Object data) {
         boolean flag = true;
         try {
             // 璁剧疆鏂囦欢鎵�鍦ㄧ洰褰曠殑璺緞

--
Gitblit v1.8.0