From e623e633f1a28b66632d9c17dcfe2f6e2a78073b Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期四, 10 八月 2023 16:24:21 +0800 Subject: [PATCH] 代码修改 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java | 48 +++++++++++++++++++++++++++++++++++------------- 1 files changed, 35 insertions(+), 13 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java index 36480c8..b2ac01f 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java @@ -13,14 +13,18 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; +import javax.management.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.lang.management.ManagementFactory; +import java.util.Set; /** * 閫氱敤璇锋眰澶勭悊 @@ -67,13 +71,22 @@ */ @PostMapping("/common/upload") public AjaxResult uploadFile(MultipartFile file) throws Exception { - int tomcatPort = getTomcatPort(); + + int tomcatPort1 = getTomcatPort(); + log.info("tomcatPort1鐨勫�间负锛� {}", tomcatPort1); + //杩欎釜鐪佷汉姘戞槸8099锛屾墍浠ョ洿鎺ュ啓姝� + int tomcatPort = 8099; try { // 涓婁紶鏂囦欢璺緞 String filePath = RuoYiConfig.getUploadPath(); // 涓婁紶骞惰繑鍥炴柊鏂囦欢鍚嶇О String fileName = FileUploadUtils.upload(filePath, file); - String url = serverConfig.getUrl() + fileName; + String url1 = serverConfig.getUrl(); + log.info("url1鐨勫�紀ld :{}", url1); + //杩欓噷鐨�8032涓嶆槸tomcat鐨勶紝鎵�浠ヨ杞垚tomcat鐨� + url1 = url1.replace("8032", "8099"); + log.info("url1鐨勫�糿ew :{}", url1); + String url = url1 + fileName; AjaxResult ajax = AjaxResult.success(); ajax.put("fileName", fileName); ajax.put("url", url); @@ -83,16 +96,6 @@ } } - private static int getTomcatPort() { - int port = 0; - Tomcat tomcat = new Tomcat(); - Connector connector = tomcat.getConnector(); - if (connector != null) { - AbstractProtocol protocol = (AbstractProtocol) connector.getProtocolHandler(); - port = protocol.getPort(); - } - return port; - } /** * 鏈湴璧勬簮閫氱敤涓嬭浇 @@ -116,4 +119,23 @@ log.error("涓嬭浇鏂囦欢澶辫触", e); } } -} + + + public int getTomcatPort() { + MBeanServer beanServer = ManagementFactory.getPlatformMBeanServer(); + try { + QueryExp protocol = Query.match(Query.attr("protocol"), Query.value("HTTP/1.1")); + ObjectName name = new ObjectName("*:type=Connector,*"); + Set<ObjectName> objectNames = beanServer.queryNames(name, protocol); + for (ObjectName objectName : objectNames) { + String catalina = objectName.getDomain(); + if ("Catalina".equals(catalina)) { + return Integer.parseInt(objectName.getKeyProperty("port")); + } + } + } catch (MalformedObjectNameException e) { + e.printStackTrace(); + } + return 0; + } +} \ No newline at end of file -- Gitblit v1.9.3