spring-boot集成webSocket

spring-boot集成webSocket,第1张

spring-boot集成webSocket 工具、版本

开发工具:IntelliJ IDEA
JDK:1.8
spring-boot:2.6.0(事例使用,可根据自己版本调整)
maven:3.6.3

依赖jar
        
            org.springframework.boot
            spring-boot-starter
        
        
            org.springframework.boot
            spring-boot-starter-websocket
        
        
            org.projectlombok
            lombok
        
        
            com.alibaba
            fastjson
            1.2.49
        
项目结构

结构介绍

一、websocket服务注册到spring容器

@Configuration
public class WebSocketConfig {
    @Bean
    public ServerEndpointExporter serverEndpointExporter() {
        return new ServerEndpointExporter();
    }
}
二、开放服务节点
@Slf4j
@Component
@ServerEndpoint("/socket/server/{clientId}")
public class SocketServer {


    private Logger logger = LoggerFactory.getLogger(SocketServer.class);

    @OnOpen
    public void onOpen(@PathParam("clientId") String clientId, Session session) throws IOException {
        logger.info("客户端{},上线。", clientId);
        session.getBasicRemote().sendText("欢迎上线。");
    }

    @OnClose
    public void onClose(@PathParam("clientId") String clientId) {
        logger.info("客户端{},离线。", clientId);
    }

    @OnError
    public void onError(@PathParam("clientId") String clientId, Throwable throwable) {
        logger.info("客户端{},异常及异常原因:{}。", clientId, throwable);
    }


    @OnMessage
    public void handler(String receiveMessage, Session session) {
        //接收消息
        logger.info("客户端发送消息内容:{}。", receiveMessage);
        try {
            session.getBasicRemote().sendText("收到:" + receiveMessage);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}

测试

测试地址:http://coolaf.com/tool/chattest

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5612011.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存