广播式是指服务端有消息时会将消息发送给所有连接了当前endpoint的浏览器。
1.首先新建SpringBoot项目
略
2.引入sockjs.min.js、stomp.min.js、jquery.min.js
可自行下载。下载后放在src/main/resources/static下。
3. 配置webSocket
package com.wangh.sringboot_websocket;
import org.springframework.context.annotation.Configuration;
import org.springframework.messaging.simp.config.MessageBrokerRegistry;
import org.springframework.web.socket.config.annotation.AbstractWebSocketMessageBrokerConfigurer;
import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker;
import org.springframework.web.socket.config.annotation.StompEndpointRegistry;
/**
*广播式:服务端有消息时会将消息发送给所有连接了当前endpoint的浏览器
*/
@Configuration
@EnableWebSocketMessageBroker //开启webSocket支持。开启使用STOMP协议传输基于代理MessageBroker的消息,这时控制器支持使用@MessageMapping
public class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer {
@Override
//注册STOMP协议的节点Endpoint,并映射指定URL
public void registerStompEndpoints(StompEndpointRegistry registry) {
//注册一个Endpoint节点,并指定使用SockJS协议
registry.addEndpoint("/endpointEasted").withSockJS();
}
@Override
//配置消息代理
public void configureMessageBroker(MessageBrokerRegistry registry) {
//广播式应配置一个/topic消息代理
registry.enableSimpleBroker("/topic");
}
}
浏览器向服务器发送消息接受类
package com.wangh.sringboot_websocket;
/**
* 浏览器向服务器发送消息接受类
*/