From 52e6812c5cf6d139ae183afff976029c50adf4b4 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期一, 06 十一月 2023 16:58:55 +0800
Subject: [PATCH] 1

---
 src/main/java/com/yssh/service/SocketService.java       |   60 ++++++++++++++++++++++++++++++
 src/main/resources/application.yml                      |    4 ++
 src/main/java/com/yssh/controller/SuYuanController.java |   19 +++++++++
 3 files changed, 83 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/yssh/controller/SuYuanController.java b/src/main/java/com/yssh/controller/SuYuanController.java
index 1fa3d4a..0c9ebc6 100644
--- a/src/main/java/com/yssh/controller/SuYuanController.java
+++ b/src/main/java/com/yssh/controller/SuYuanController.java
@@ -3,6 +3,7 @@
 import cn.hutool.core.date.DateTime;
 import com.yssh.entity.*;
 import com.yssh.service.CommonService;
+import com.yssh.service.SocketService;
 import com.yssh.service.VocValsService;
 import com.yssh.utils.DateUtils;
 import com.yssh.utils.StringUtils;
@@ -46,6 +47,9 @@
 
     @Resource
     private VocValsService vocValsService;
+
+    @Resource
+    private SocketService socketService;
 
     private final static SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHH");
 
@@ -214,4 +218,19 @@
 
         return Result.OK(suYuanService.selectFastById(id, date));
     }
+
+    @ApiOperation(value = "鍙戦�佹秷鎭�")
+    @ApiOperationSupport(order = 19)
+    @GetMapping("/sendMsg")
+    public Result sendMsg(@RequestParam(value = "msg") String msg) {
+        if (StringUtils.isEmpty(msg)) return Result.error("娑堟伅涓嶈兘涓虹┖");
+
+        try {
+            String rs = socketService.sendMsg(msg);
+
+            return Result.OK(rs);
+        } catch (Exception ex) {
+            return Result.error(ex.getMessage());
+        }
+    }
 }
diff --git a/src/main/java/com/yssh/service/SocketService.java b/src/main/java/com/yssh/service/SocketService.java
new file mode 100644
index 0000000..d5eabbd
--- /dev/null
+++ b/src/main/java/com/yssh/service/SocketService.java
@@ -0,0 +1,60 @@
+package com.yssh.service;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+
+import java.io.BufferedReader;
+import java.io.InputStreamReader;
+import java.io.PrintWriter;
+import java.net.Socket;
+
+/**
+ * Socket鏈嶅姟绫�
+ * @author WWW
+ * @date 2023-11-06
+ */
+@Service
+public class SocketService {
+    /**
+     * Socket鐨処P
+     */
+    @Value("${socket.ip}")
+    private String ip;
+
+    /**
+     * Socket鐨勭鍙�
+     */
+    @Value("${socket.port}")
+    private int port;
+
+    private final Logger logger = LoggerFactory.getLogger(this.getClass());
+
+    /**
+     * 鍙戦�佹秷鎭�
+     */
+    public String sendMsg(String msg) throws Exception {
+        try {
+            // 鍒涘缓Socket瀵硅薄锛屾寚瀹氭湇鍔$鐨処P鍦板潃鍜岀鍙e彿
+            Socket socket = new Socket(ip, port);
+
+            // 鑾峰彇杈撳叆娴佸拰杈撳嚭娴� 杈撳叆娴佸拰杈撳嚭娴佹槸閫氳繃socket瀵硅薄鏉ヨ繘琛屾暟鎹紶杈撶殑銆�
+            BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
+            PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
+
+            // 灏嗙敤鎴疯緭鍏ョ殑淇℃伅鍙戦�佺粰鏈嶅姟绔�
+            out.println(msg);
+
+            // 鎺ユ敹鏈嶅姟绔殑鍝嶅簲骞舵墦鍗�
+            String rs = in.readLine();
+
+            socket.close();
+
+            return rs;
+        } catch (Exception ex) {
+            logger.error(ex.getMessage(), ex);
+            throw ex;
+        }
+    }
+}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 3e6980b..1750e02 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -58,3 +58,7 @@
   pathMapping:
   # 鏄惁寮�鍚疜nife4j澧炲己妯″紡,榛樿鏄� false
   enable: true
+
+socket:
+  ip: 127.0.0.1
+  port: 6666

--
Gitblit v1.9.3