pom.xml中加入
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
写websocket类
@ServerEndpoint(value = "/meetingWebSocket/{userId}")
@Component
public class MeetingWebSocket {
/*房间信息记录*/
private RoomsMaps roomsMaps = new RoomsMaps();
Map<String,Session> userMap = new HashMap<>();
private static int onlineCount = 0;
private Session session;
private String roomId;
private String userId;
@OnOpen
public void onOpen(@PathParam("userId") String userId,Session session)throws IOException{
this.session = session;
// this.roomId = roomId;
this.userId = userId;
onlineCount++;
userMap.put(this.userId,this.session);
System.out.println(this.userId+"加入!");
System.out.println("现在有"+onlineCount+"个用户");
}
@OnClose
public void onClose(){
userMap.remove(userId);
onlineCount--;
System.out.println(userId+"退出");
System.out.println("现在有"+onlineCount+"个用户");
}
@OnMessage
public void onMessage(String message,Session session) throws IOException {
for (Session a : userMap.values()){
a.getBasicRemote().sendText(message);
}
}
}
写config
@Configuration
public class MeetingWebSocketConfig {
@Bean
public ServerEndpointExporter serverEndpointExporter(){
return new ServerEndpointExporter();
}
}
启动即可