websocket 在线测试: http://coolaf.com/tool/chattest
- 引入依赖
org.springframework.boot spring-boot-starter-websocket
- 新建 websocket 配置类 WebSocketConfig, 如果不配置,则会出现 websocket 连接异常
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.socket.server.standard.ServerEndpointExporter;
@Configuration
public class WebSocketConfig {
@Bean
public ServerEndpointExporter serverEndpointExporter() {
return new ServerEndpointExporter();
}
}
- 新建 websocket 处理类, 请根据自己的业务类型进行处理
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.websocket.*;
import javax.websocket.server.PathParam;
import javax.websocket.server.ServerEndpoint;
@Component
@ServerEndpoint("/websocketScan")
@Slf4j
public class WebsocketScan {
@OnOpen
public void onOpen(Session session){
}
@OnMessage
public void onMessage(String message, Session session) {
}
@OnClose
public void onClose(){
}
@OnError
public void onError(Session session, Throwable error){
System.out.println("发生错误");
error.printStackTrace();
}
}
- 注:
@Component默认是单例模式的,但springboot还是会为每个websocket连接初始化一个bean,开发中要多多留意



