Browse Source

修改部分stream

menglu 3 years ago
parent
commit
dbf81f48a5

+ 118 - 122
ibms-data-sdk/src/main/java/com/persagy/ibms/data/sdk/util/Constant.java

@@ -46,135 +46,130 @@ public class Constant {
 	public static List<ConfigRelation> ConfigRelationList = new ArrayList<ConfigRelation>();
 	public static Map<String, Boolean> keyWordMap = new HashMap<String, Boolean>();
 
-
 	static {
+		try (InputStream stream = getStream("config.xml")) {
+			SAXReader saxReader = new SAXReader();
+			Document document = saxReader.read(stream);
+			if (document != null) {
+				Iterator iter;
+				Element element;
 
-		try {
-			{
-				SAXReader saxReader = new SAXReader();
-				InputStream stream = getStream("config.xml");
-				Document document = saxReader.read(stream);
-				if (document != null) {
-					Iterator iter;
-					Element element;
+				iter = document.selectNodes("/root/groupCode").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					RepositoryContainer.RepositoryBase.groupCode = element.getText();
+				}
+				iter = document.selectNodes("/root/projectId").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					RepositoryContainer.RepositoryBase.projectId = element.getText();
+				}
+				iter = document.selectNodes("/root/sdk_version").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					sdk_version = element.getText();
+				}
+				iter = document.selectNodes("/root/rwd").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					rwd_url = element.attribute("url").getValue();
+				}
+				iter = document.selectNodes("/root/zkt_monitor").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					zkt_monitor_url = element.attribute("url").getValue();
+				}
+				iter = document.selectNodes("/root/zkt_control").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					zkt_control_url = element.attribute("url").getValue();
+				}
+				iter = document.selectNodes("/root/physical_world").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					physical_world = element.attribute("path").getValue();
+					physical_world_refresh_enable = Boolean.parseBoolean(element.attribute("refresh_enable").getValue());
+				}
+				iter = document.selectNodes("/root/zkt_physical_world").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					zkt_physical_world = element.attribute("path").getValue();
+					zkt_physical_world_enable = Boolean.parseBoolean(element.attribute("enable").getValue());
+					zkt_physical_world_refresh_enable = Boolean.parseBoolean(element.attribute("refresh_enable").getValue());
+				}
+				iter = document.selectNodes("/root/ibms_physical_world").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					ibms_physical_world = element.attribute("path").getValue();
+					ibms_physical_world_enable = Boolean.parseBoolean(element.attribute("enable").getValue());
+					ibms_physical_world_refresh_enable = Boolean.parseBoolean(element.attribute("refresh_enable").getValue());
+				}
+				iter = document.selectNodes("/root/config").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					config = element.attribute("path").getValue();
+					config_refresh_enable = Boolean.parseBoolean(element.attribute("refresh_enable").getValue());
+				}
 
-					iter = document.selectNodes("/root/groupCode").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						RepositoryContainer.RepositoryBase.groupCode = element.getText();
-					}
-					iter = document.selectNodes("/root/projectId").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						RepositoryContainer.RepositoryBase.projectId = element.getText();
-					}
-					iter = document.selectNodes("/root/sdk_version").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						sdk_version = element.getText();
-					}
-					iter = document.selectNodes("/root/rwd").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						rwd_url = element.attribute("url").getValue();
-					}
-					iter = document.selectNodes("/root/zkt_monitor").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						zkt_monitor_url = element.attribute("url").getValue();
-					}
-					iter = document.selectNodes("/root/zkt_control").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						zkt_control_url = element.attribute("url").getValue();
-					}
-					iter = document.selectNodes("/root/physical_world").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						physical_world = element.attribute("path").getValue();
-						physical_world_refresh_enable = Boolean.parseBoolean(element.attribute("refresh_enable").getValue());
-					}
-					iter = document.selectNodes("/root/zkt_physical_world").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						zkt_physical_world = element.attribute("path").getValue();
-						zkt_physical_world_enable = Boolean.parseBoolean(element.attribute("enable").getValue());
-						zkt_physical_world_refresh_enable = Boolean.parseBoolean(element.attribute("refresh_enable").getValue());
-					}
-					iter = document.selectNodes("/root/ibms_physical_world").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						ibms_physical_world = element.attribute("path").getValue();
-						ibms_physical_world_enable = Boolean.parseBoolean(element.attribute("enable").getValue());
-						ibms_physical_world_refresh_enable = Boolean.parseBoolean(element.attribute("refresh_enable").getValue());
-					}
-					iter = document.selectNodes("/root/config").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						config = element.attribute("path").getValue();
-						config_refresh_enable = Boolean.parseBoolean(element.attribute("refresh_enable").getValue());
-					}
+				iter = document.selectNodes("/root/iot_websocket").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					iot_websocket_url = element.attribute("url").getValue();
+				}
+				iter = document.selectNodes("/root/iot_collect").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					iot_collect_url = element.attribute("url").getValue();
+				}
+				iter = document.selectNodes("/root/iot_project").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					iot_project_url = element.attribute("url").getValue();
+				}
 
-					iter = document.selectNodes("/root/iot_websocket").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						iot_websocket_url = element.attribute("url").getValue();
-					}
-					iter = document.selectNodes("/root/iot_collect").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						iot_collect_url = element.attribute("url").getValue();
-					}
-					iter = document.selectNodes("/root/iot_project").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						iot_project_url = element.attribute("url").getValue();
-					}
+				iter = document.selectNodes("/root/alarm").iterator();
+				if (iter.hasNext()) {
+					element = (Element) iter.next();
+					alarm_enable = Boolean.parseBoolean(element.attribute("enable").getValue());
+					alarm_websocket = element.attribute("websocket").getValue();
+					alarm_rest = element.attribute("rest").getValue();
+					alarm_rest_get = Boolean.parseBoolean(element.attribute("rest_get").getValue());
+				}
 
-					iter = document.selectNodes("/root/alarm").iterator();
-					if (iter.hasNext()) {
-						element = (Element) iter.next();
-						alarm_enable = Boolean.parseBoolean(element.attribute("enable").getValue());
-						alarm_websocket = element.attribute("websocket").getValue();
-						alarm_rest = element.attribute("rest").getValue();
-						alarm_rest_get = Boolean.parseBoolean(element.attribute("rest_get").getValue());
+				iter = document.selectNodes("/root/ConfigRelation").iterator();
+				while (iter.hasNext()) {
+					element = (Element) iter.next();
+					ConfigRelation ConfigRelation = new ConfigRelation();
+					ConfigRelation.graphCode = element.attribute("graphCode").getValue();
+					ConfigRelation.relCode = element.attribute("relCode").getValue();
+					if (element.attribute("relValue") != null) {
+						ConfigRelation.relValue = element.attribute("relValue").getValue();
 					}
-
-					iter = document.selectNodes("/root/ConfigRelation").iterator();
-					while (iter.hasNext()) {
-						element = (Element) iter.next();
-						ConfigRelation ConfigRelation = new ConfigRelation();
-						ConfigRelation.graphCode = element.attribute("graphCode").getValue();
-						ConfigRelation.relCode = element.attribute("relCode").getValue();
-						if (element.attribute("relValue") != null) {
-							ConfigRelation.relValue = element.attribute("relValue").getValue();
-						}
-						ConfigRelation.objFrom = element.attribute("objFrom").getValue();
-						ConfigRelation.objTo = element.attribute("objTo").getValue();
-						Attribute nameInFrom = element.attribute("nameInFrom");
-						if (nameInFrom != null) {
-							ConfigRelation.nameInFrom = nameInFrom.getValue();
-							if (element.attribute("multiplicityFrom") != null) {
-								ConfigRelation.multiplicityFrom = element.attribute("multiplicityFrom").getValue();
-							}
-							keyWordMap.put(ConfigRelation.nameInFrom, true);
+					ConfigRelation.objFrom = element.attribute("objFrom").getValue();
+					ConfigRelation.objTo = element.attribute("objTo").getValue();
+					Attribute nameInFrom = element.attribute("nameInFrom");
+					if (nameInFrom != null) {
+						ConfigRelation.nameInFrom = nameInFrom.getValue();
+						if (element.attribute("multiplicityFrom") != null) {
+							ConfigRelation.multiplicityFrom = element.attribute("multiplicityFrom").getValue();
 						}
-						Attribute nameInTo = element.attribute("nameInTo");
-						if (nameInTo != null) {
-							ConfigRelation.nameInTo = nameInTo.getValue();
-							if (element.attribute("multiplicityTo") != null) {
-								ConfigRelation.multiplicityTo = element.attribute("multiplicityTo").getValue();
-							}
-							keyWordMap.put(ConfigRelation.nameInTo, true);
+						keyWordMap.put(ConfigRelation.nameInFrom, true);
+					}
+					Attribute nameInTo = element.attribute("nameInTo");
+					if (nameInTo != null) {
+						ConfigRelation.nameInTo = nameInTo.getValue();
+						if (element.attribute("multiplicityTo") != null) {
+							ConfigRelation.multiplicityTo = element.attribute("multiplicityTo").getValue();
 						}
-						ConfigRelationList.add(ConfigRelation);
-						objType_hasRelation.put(ConfigRelation.objFrom, true);
-						objType_hasRelation.put(ConfigRelation.objTo, true);
+						keyWordMap.put(ConfigRelation.nameInTo, true);
 					}
+					ConfigRelationList.add(ConfigRelation);
+					objType_hasRelation.put(ConfigRelation.objFrom, true);
+					objType_hasRelation.put(ConfigRelation.objTo, true);
 				}
 			}
 		} catch (Exception e) {
-			log.error(e.getMessage(),e);
+			log.error(e.getMessage(), e);
 		}
 	}
 
@@ -271,6 +266,7 @@ public class Constant {
 		}
 		return null;
 	}
+
 	public static InputStream getStream(String resourc) {
 		if (resourc.startsWith(File.separator)) {
 			resourc = StrUtil.removePrefix(resourc, File.separator);
@@ -280,7 +276,7 @@ public class Constant {
 			String filePath = System.getProperty("user.dir") + File.separator + "config" + File.separator + resourc;
 			InputStream stream = ResourceUtil.getStream(filePath);
 			if (stream != null) {
-				log.info("使用1路径{}获取配置{}",filePath,resourc);
+				log.info("使用1路径{}获取配置{}", filePath, resourc);
 				return stream;
 			}
 		} catch (Exception e) {
@@ -290,7 +286,7 @@ public class Constant {
 			String filePath = System.getProperty("user.dir") + File.separator + resourc;
 			InputStream stream = ResourceUtil.getStream(filePath);
 			if (stream != null) {
-				log.info("使用2路径{}获取配置{}",filePath,resourc);
+				log.info("使用2路径{}获取配置{}", filePath, resourc);
 				return stream;
 			}
 		} catch (Exception e) {
@@ -298,7 +294,7 @@ public class Constant {
 		try {
 			InputStream stream = new ClassPathResource(File.separator + resourc).getInputStream();
 			if (stream != null) {
-				log.info("使用3路径{}获取配置{}","ClassPathResource/"+resourc,resourc);
+				log.info("使用3路径{}获取配置{}", "ClassPathResource/" + resourc, resourc);
 				return stream;
 			}
 		} catch (Exception e) {
@@ -306,13 +302,13 @@ public class Constant {
 		try {
 			InputStream stream = Constant.class.getResourceAsStream(File.separator + resourc);
 			if (stream != null) {
-				log.info("使用4路径{}获取配置{}","resource/"+resourc,resourc);
+				log.info("使用4路径{}获取配置{}", "resource/" + resourc, resourc);
 				return stream;
 			}
 		} catch (Exception e) {
 		}
 
-		log.info("无法获取配置{}",resourc);
+		log.info("无法获取配置{}", resourc);
 		return null;
 	}
 

+ 23 - 8
ibms-data-sdk/src/main/java/com/persagy/ibms/data/sdk/util/ExcelCommonUtil.java

@@ -1,7 +1,8 @@
 package com.persagy.ibms.data.sdk.util;
 
-import java.io.File;
+import java.io.FileInputStream;
 import java.io.FileOutputStream;
+import java.io.InputStream;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -105,17 +106,17 @@ public class ExcelCommonUtil {
 					Cell cell = row.createCell(index_col_start + index_col);
 					cell.setCellValue(content);
 				}
-			} 
-			//锁定第一行,自动列宽
+			}
+			// 锁定第一行,自动列宽
 			if (sheet.titleColList != null && sheet.titleColList.size() > 0) {
 				st.createFreezePane(0, 1, 0, 1);
 				for (int i = 0; i < sheet.titleColList.size(); i++) {
 					st.autoSizeColumn((short) 0);
 				}
 			}
-			//锁定第一列
+			// 锁定第一列
 			if (sheet.titleRowList != null && sheet.titleRowList.size() > 0) {
-				st.createFreezePane( 1, 0, 1, 0 );
+				st.createFreezePane(1, 0, 1, 0);
 			}
 		}
 
@@ -126,9 +127,15 @@ public class ExcelCommonUtil {
 	}
 
 	public static Map<String, ExcelSheet> Read(String filepath, boolean titleCol) throws Exception {
-		Map<String, ExcelSheet> result = new HashMap<String, ExcelSheet>();
+		InputStream stream = new FileInputStream(filepath);
+		Map<String, ExcelSheet> result = Read(stream, titleCol);
+		stream.close();
+		return result;
+	}
 
-		Workbook workbook = WorkbookFactory.create(new File(filepath));
+	public static Map<String, ExcelSheet> Read(InputStream stream, boolean titleCol) throws Exception {
+		Map<String, ExcelSheet> result = new HashMap<String, ExcelSheet>();
+		Workbook workbook = WorkbookFactory.create(stream);
 		int numbers = workbook.getNumberOfSheets();
 		for (int i = 0; i < numbers; i++) {
 			Sheet sheet = workbook.getSheetAt(i);
@@ -147,7 +154,15 @@ public class ExcelCommonUtil {
 	}
 
 	public static ExcelSheet ReadSheet(String filepath, String sheetName, boolean titleCol) throws Exception {
-		Workbook workbook = WorkbookFactory.create(new File(filepath));
+		InputStream stream = new FileInputStream(filepath);
+		ExcelSheet result = ReadSheet(stream, sheetName, titleCol);
+		stream.close();
+		return result;
+	}
+
+	public static ExcelSheet ReadSheet(InputStream stream, String sheetName, boolean titleCol) throws Exception {
+		Workbook workbook = WorkbookFactory.create(stream);
+
 		Sheet sheet = workbook.getSheet(sheetName);
 		ExcelSheet ExcelSheet;
 		if (titleCol) {

+ 3 - 2
ibms-data-sdk/src/main/java/com/persagy/ibms/data/sdk/util/ExcelRelationUtil.java

@@ -1,5 +1,6 @@
 package com.persagy.ibms.data.sdk.util;
 
+import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -15,8 +16,8 @@ import org.apache.poi.ss.util.CellRangeAddress;
 
 public class ExcelRelationUtil {
 
-	public static void ReadRel(String fileName, Map<String, Map<String, Integer>> relDic) throws Exception {
-		Workbook workbook = WorkbookFactory.create(FileUtil.file(fileName));
+	public static void ReadRel(InputStream stream, Map<String, Map<String, Integer>> relDic) throws Exception {
+		Workbook workbook = WorkbookFactory.create(stream);
 		Sheet wSheet1 = workbook.getSheetAt(0);
 		List<CellRangeAddress> rangeList = new ArrayList<CellRangeAddress>();
 		for (int i = 0; i < wSheet1.getNumMergedRegions(); i++) {

+ 0 - 5
ibms-data-sdk/src/main/java/com/persagy/ibms/data/sdk/util/FileUtil.java

@@ -4,14 +4,9 @@ import java.io.BufferedWriter;
 import java.io.File;
 import java.io.FileOutputStream;
 import java.io.OutputStreamWriter;
-import java.lang.reflect.Constructor;
-import java.net.URL;
-import java.nio.file.Files;
 import java.util.HashMap;
 import java.util.Map;
 
-import cn.hutool.core.io.resource.ClassPathResource;
-import cn.hutool.core.io.resource.ResourceUtil;
 import cn.hutool.core.util.StrUtil;
 import lombok.extern.slf4j.Slf4j;
 

+ 7 - 1
ibms-data-sdk/src/main/java/com/persagy/ibms/data/sdk/util/RWDDownloadUtil.java

@@ -1,6 +1,7 @@
 package com.persagy.ibms.data.sdk.util;
 
 import java.io.File;
+import java.io.InputStream;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -193,7 +194,12 @@ public class RWDDownloadUtil {
 					FastJsonUtil.toFormatString(infoArray));
 		}
 		Map<String, Map<String, Integer>> relDic = new HashMap<String, Map<String, Integer>>();
-		ExcelRelationUtil.ReadRel("relation.xlsx", relDic);
+		try (InputStream stream = Constant.getStream("relation.xlsx")) {
+			ExcelRelationUtil.ReadRel(stream, relDic);
+		} catch (Exception e) {
+			log.error(e.getMessage(), e);
+			throw e;
+		}
 		for (String graphCode : relDic.keySet().toArray(new String[0])) {
 			File graph = new File(path + Constant.getSeperator() + "relation" + Constant.getSeperator() + graphCode);
 			if (!graph.exists()) {