wuyouming666
2023-09-05 c7df23be1f204458883088c18cbe33a451b8e50d
springboot-vue3/src/main/java/com/example/springboot/component/WebSocketServer.java
@@ -1,5 +1,7 @@
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;
@@ -23,16 +25,19 @@
@ServerEndpoint(value = "/api/talk/{username}")
@Component
public class WebSocketServer {
   private static final Logger log = LoggerFactory.getLogger(WebSocketServer.class);
   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,11 +80,11 @@
    public void onMessage(String message, Session session, @PathParam("username") String username) {
        log.info("服务端收到用户username={}的消息:{}", 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)
    }
@@ -115,4 +120,11 @@
        }
    }
    public List<String> getMessages() {
        return messages;
    }
    public void clearMessages() {
        messages.clear();
    }
}