From c4948017824b1efa71faeb163e3609bec91f5719 Mon Sep 17 00:00:00 2001 From: cuikaidong <ckd2942379034@163.com> Date: 星期五, 15 八月 2025 10:02:00 +0800 Subject: [PATCH] MDC,IOT合并 --- lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java | 20 ++++++++++++++++++-- 1 files changed, 18 insertions(+), 2 deletions(-) diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java index b2ccf23..fe881f7 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java @@ -1,7 +1,9 @@ package org.jeecg.modules.message.websocket; +import java.util.HashMap; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.CopyOnWriteArraySet; import javax.annotation.Resource; import javax.websocket.*; import javax.websocket.server.PathParam; @@ -23,7 +25,8 @@ @Slf4j @ServerEndpoint("/websocket/{userId}") public class WebSocket { - + + private static CopyOnWriteArraySet<WebSocket> webSockets =new CopyOnWriteArraySet<>(); /**绾跨▼瀹夊叏Map*/ private static ConcurrentHashMap<String, Session> sessionPool = new ConcurrentHashMap<>(); @@ -33,6 +36,7 @@ public static final String REDIS_TOPIC_NAME = "socketHandler"; @Resource private JeecgRedisClient jeecgRedisClient; + private Session session; //==========銆恮ebsocket鎺ュ彈銆佹帹閫佹秷鎭瓑鏂规硶 鈥斺�� 鍏蜂綋鏈嶅姟鑺傜偣鎺ㄩ�亀s娑堟伅銆�======================================================================================== @@ -187,5 +191,17 @@ } } //=======銆愰噰鐢╮edis鍙戝竷璁㈤槄妯″紡鈥斺�旀帹閫佹秷鎭��========================================================================================== - + // 姝や负骞挎挱娑堟伅 + public void sendAllMessage(String message) { +// log.info("銆恮ebsocket娑堟伅銆戝箍鎾秷鎭�:"+message); + for(WebSocket webSocket : webSockets) { + try { + if(webSocket.session.isOpen()) { + webSocket.session.getAsyncRemote().sendText(message); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } } \ No newline at end of file -- Gitblit v1.9.3