From 1479f77b88e355ce2c7c073458d919c8e06baa18 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期一, 04 十二月 2023 09:10:11 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/CanadaMes
---
springboot-vue3/src/main/java/com/example/springboot/component/WebSocketServer.java | 44 +++++++++++++++++++++++++++++++++++---------
1 files changed, 35 insertions(+), 9 deletions(-)
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/WebSocketServer.java b/springboot-vue3/src/main/java/com/example/springboot/component/WebSocketServer.java
index 18785c1..9515c0d 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/WebSocketServer.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/WebSocketServer.java
@@ -1,7 +1,10 @@
package com.example.springboot.component;
+import java.util.ArrayList;
+import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
+
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -14,8 +17,8 @@
import javax.websocket.server.PathParam;
import javax.websocket.server.ServerEndpoint;
+import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.stereotype.Component;
-
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
@@ -23,16 +26,30 @@
@ServerEndpoint(value = "/api/talk/{username}")
@Component
public class WebSocketServer {
-
- private static final Logger log = LoggerFactory.getLogger(WebSocketServer.class);
+ // @Autowired
+ // HomeMapper homeMapper;
+
+ static ConfigurableApplicationContext applicationContext;
+
+ //瑙e喅鏃犳硶娉ㄥ叆mapper闂 //浣跨敤鏂规硶 homeMapper=WebSocketServer.applicationContext.getBean(HomeMapper.class);
+ public static void setApplicationContext(ConfigurableApplicationContext configurableApplicationContext) {
+ WebSocketServer.applicationContext = configurableApplicationContext;
+ }
+
+
+ private static final Logger log = LoggerFactory.getLogger(WebSocketServer.class);
+ private List<String> messages;
/**
* 璁板綍褰撳墠鍦ㄧ嚎杩炴帴鏁�
*/
public static final Map<String, WebSocketServer> sessionMap = new ConcurrentHashMap<>();
- private String username;
- private Session session;
+ String username;
+ Session session;
+ public WebSocketServer() {
+ this.messages = new ArrayList<>();
+ }
/**
* 杩炴帴寤虹珛鎴愬姛璋冪敤鐨勬柟娉�
*/
@@ -75,12 +92,13 @@
public void onMessage(String message, Session session, @PathParam("username") String username) {
log.info("鏈嶅姟绔敹鍒扮敤鎴穟sername={}鐨勬秷鎭�:{}", username, message);
JSONObject obj = JSONUtil.parseObj(message);
-
String text = obj.getStr("data");
JSONObject jsonObject = new JSONObject();
- jsonObject.set("message", "ngng");
+ jsonObject.set("message", text);
+ this.messages.add(text);
this.sendMessage(jsonObject.toString()); //JSONUtil.toJsonStr(jsonObject)
+
}
@OnError
@@ -94,7 +112,7 @@
*/
public void sendMessage(String message) {
try {
- log.info("鏈嶅姟绔粰瀹㈡埛绔痆{}]鍙戦�佹秷鎭瘂}", this.session.getId(), message);
+ // log.info("鏈嶅姟绔粰瀹㈡埛绔痆{}]鍙戦�佹秷鎭瘂}", this.session.getId(), message);
this.session.getBasicRemote().sendText(message);
} catch (Exception e) {
log.error("鏈嶅姟绔彂閫佹秷鎭粰瀹㈡埛绔け璐�", e);
@@ -107,7 +125,7 @@
public void sendAllMessage(String message) {
try {
for (WebSocketServer webSocketServer : sessionMap.values()) {
- log.info("鏈嶅姟绔粰瀹㈡埛绔痆{}]鍙戦�佹秷鎭瘂}", this.session.getId(), message);
+ //log.info("鏈嶅姟绔粰瀹㈡埛绔痆{}]鍙戦�佹秷鎭瘂}", this.session.getId(), message);
webSocketServer.sendMessage(message);
}
} catch (Exception e) {
@@ -115,4 +133,12 @@
}
}
+ public List<String> getMessages() {
+ return messages;
+
+ }
+
+ public void clearMessages() {
+ messages.clear();
+ }
}
--
Gitblit v1.8.0