栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

springboot+vue实现websocket配置过程解析

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

springboot+vue实现websocket配置过程解析

1.引入依赖


   org.springframework.boot
   spring-boot-starter-websocket
   1.3.5.RELEASE

2.配置ServerEndpointExporter

@Configuration
public class WebSocketConfig {
  @Bean
  public ServerEndpointExporter serverEndpointExporter() {
    return new ServerEndpointExporter();
  }

}

这个bean会自动注册使用了@ServerEndpoint注解声明的Websocket endpoint。

3.创建websocket的ServerEndpoint端点

@Component
@ServerEndpoint("/socket")
public class WebSocketServer {
  
  private static Map onlineSessions = new ConcurrentHashMap<>();


  
  @onOpen
  public void onOpen(Session session) {
    onlineSessions.put(session.getId(), session);
    
  }

  
  @onMessage
  public void onMessage(Session session, String jsonStr) {
    
  }

  
  @onClose
  public void onClose(Session session) {
    onlineSessions.remove(session.getId());
    
  }

  
  @onError
  public void onError(Session session, Throwable error) {
    error.printStackTrace();
  }

  
  public void sendMessageToAll(String jsonMsg) {
    onlineSessions.forEach((id, session) -> {
      try {
 session.getBasicRemote().sendText(jsonMsg);
      } catch (IOException e) {
 e.printStackTrace();
      }
    });
  }

}

4.前端配置连接与接收消息