Spring提供了一个基于WebSocket的STOMP客户端和一个基于TCP的STOMP客户端。
首先,你可以创建并配置WebSocketStompClient
,如下所示:
WebSocketClient webSocketClient = new StandardWebSocketClient();
WebSocketStompClient stompClient = new WebSocketStompClient(webSocketClient);
stompClient.setMessageConverter(new StringMessageConverter());
stompClient.setTaskScheduler(taskScheduler); *// for heartbeats*
在上述示例中,你可以将StandardWebSocketClient
替换为SockJsClient
,因为SockJsClient
也是WebSocketClient
的实现。SockJsClient
可以使用WebSocket或HTTP作为后备传输。有关更多详细信息,请参见[SockJsClient](<https://docs.spring.io/spring-framework/reference/web/websocket/fallback.html#websocket-fallback-sockjs-client>)
。
接下来,你可以建立连接并为STOMP会话提供一个处理器,如下例所示:
String url = "ws://127.0.0.1:8080/endpoint";
StompSessionHandler sessionHandler = new MyStompSessionHandler();
stompClient.connect(url, sessionHandler);
当会话准备