@ServerEndpoint("/websocket/{userId}")
@Component
public class WebSocketServer {
private Logger logger = LoggerFactory.getLogger(WebSocketServer.class);
//concurrent包的线程安全Set,用来存放每个客户端对应的MyWebSocket对象。
private static ConcurrentHashMap<Long, WebSocketServer> webSocketSet = new ConcurrentHashMap<>();
// 会话
private Session session;
// 用户id
private Long userId;
// 收到请求后调用的方法
@OnMessage
public void handleMessage(Session session, String message) {
logger.info("收到客户端的请求");
}
// 连接建立成功调用的方法
@OnOpen
public void onOpen(Session session, @PathParam("userId")Long userId){
logger.info("建立webSocket的连接");
this.session = session;
this.userId = userId;
webSocketSet.put(userId, this);
}
// 连接关闭调用的方法
@OnClose
public void onClose() {
logger.info(&#
webSocket通用模板
最新推荐文章于 2024-07-13 18:12:23 发布
本文将探讨如何在Web应用中使用WebSocket创建一个通用模板,实现双向实时通信。我们将讲解WebSocket的基本概念,设置步骤,以及如何构建一个适用于多种场景的WebSocket服务端和客户端模板。
摘要由CSDN通过智能技术生成