From 9e29441646434d9f54a2c3e855a724633885d8a4 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 13 八月 2019 19:43:49 +0800
Subject: [PATCH] 缓存开发测试完成

---
 WebService/src/main/java/com/java110/web/core/VueComponentTemplate.java |   60 ++++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 38 insertions(+), 22 deletions(-)

diff --git a/WebService/src/main/java/com/java110/web/core/VueComponentTemplate.java b/WebService/src/main/java/com/java110/web/core/VueComponentTemplate.java
index d27ae71..248dc15 100644
--- a/WebService/src/main/java/com/java110/web/core/VueComponentTemplate.java
+++ b/WebService/src/main/java/com/java110/web/core/VueComponentTemplate.java
@@ -1,8 +1,12 @@
 package com.java110.web.core;
 
+import org.springframework.core.io.ClassPathResource;
 import org.springframework.util.StringUtils;
 
-import java.io.*;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -10,53 +14,54 @@
  * 闈欐�佽祫婧愭枃浠跺姞杞藉櫒
  * Created by wuxw on 2019/3/18.
  */
-public class VueComponentTemplate extends PackageScanner{
+public class VueComponentTemplate extends PackageScanner {
 
     /**
      * 榛樿鎵弿璺緞
      */
-    public final static String DEFAULT_COMPONENT_PACKAGE_PATH = "components";
+    public static final String DEFAULT_COMPONENT_PACKAGE_PATH = "components";
 
     /**
      * js 鏂囦欢
      */
-    public final static String COMPONENT_JS = "js";
+    public static final String COMPONENT_JS = "js";
 
     /**
      * css 鏂囦欢
      */
-    public final static String COMPONENT_CSS = "css";
+    public static final String COMPONENT_CSS = "css";
 
     /**
      * html 鏂囦欢
      */
-    public final static String COMPONENT_HTML = "html";
+    public static final String COMPONENT_HTML = "html";
 
 
     /**
      * HTML 鏂囦欢缂撳瓨鍣�
      */
-    private final static Map<String,String> componentTemplate = new HashMap<>();
+    private static final Map<String, String> componentTemplate = new HashMap<>();
 
 
     /**
      * 鍒濆鍖� 缁勪欢淇℃伅
      */
-    public static void initComponent(String scanPath){
+    public static void initComponent(String scanPath) {
         VueComponentTemplate vueComponentTemplate = new VueComponentTemplate();
-        vueComponentTemplate.packageScanner(scanPath,COMPONENT_JS);
-        vueComponentTemplate.packageScanner(scanPath,COMPONENT_HTML);
-        vueComponentTemplate.packageScanner(scanPath,COMPONENT_CSS);
+        vueComponentTemplate.packageScanner(scanPath, COMPONENT_JS);
+        vueComponentTemplate.packageScanner(scanPath, COMPONENT_HTML);
+        vueComponentTemplate.packageScanner(scanPath, COMPONENT_CSS);
     }
 
 
     /**
      * 鏍规嵁缁勪欢缂栫爜鏌ヨ妯℃澘
+     *
      * @param componentCode
      * @return
      */
     public static String findTemplateByComponentCode(String componentCode) {
-        if(componentTemplate.containsKey(componentCode)){
+        if (componentTemplate.containsKey(componentCode)) {
             return componentTemplate.get(componentCode);
         }
 
@@ -66,27 +71,38 @@
 
     /**
      * 澶勭悊璧勬簮
+     *
      * @param filePath
      */
-    protected void handleResource(String filePath){
+    protected void handleResource(String filePath) {
         Reader reader = null;
         String sb = "";
-        try{
-            InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(filePath);
-            reader = new InputStreamReader(inputStream,"UTF-8");
+        try {
+            InputStream inputStream = new ClassPathResource(filePath).getInputStream();
+            //InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(File.separator + filePath);
+            reader = new InputStreamReader(inputStream, "UTF-8");
             int tempChar;
             StringBuffer b = new StringBuffer();
             while ((tempChar = reader.read()) != -1) {
-                    b.append((char) tempChar);
+                b.append((char) tempChar);
             }
             sb = b.toString();
-            if(!StringUtils.isEmpty(sb)){
-                componentTemplate.put(filePath.substring(filePath.lastIndexOf(File.separator)+1,filePath.length()),sb);
+            if (StringUtils.isEmpty(sb)) {
+                return;
             }
-        }catch (IOException e){
+            String componentKey = "";
+            //杩欓噷鍦╳indow 璇诲彇jar鍖呬腑鏂囦欢鏃讹紝涔熸槸 / 浣嗘槸鐩存帴鍚姩鏃� 涓篭杩欎釜 鎵�浠ヤ笉鑳界敤 File.separator 
+            if (filePath.contains("/")) {
+                componentKey = filePath.substring(filePath.lastIndexOf("/") + 1, filePath.length());
+            } else {
+                componentKey = filePath.substring(filePath.lastIndexOf("\\") + 1, filePath.length());
+            }
+            componentTemplate.put(componentKey, sb);
+
+        } catch (IOException e) {
             e.printStackTrace();
-        }finally {
-            if(reader != null){
+        } finally {
+            if (reader != null) {
                 try {
                     reader.close();
                 } catch (IOException e) {

--
Gitblit v1.8.0