本文描述在spring boot中如何使用基于stomp实现即时通信的功能。
- spring boot 版本:2.1.2.RELEASE
- jdk8
Maven pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.2.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-json</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
</dependencies>
基本配置
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {
/**
* broker定义成常量,其他地方也会用到
*/
public static final String BROKER_SYSTEM_MSG = "/system/msg";
@Override
public void configureMessageBroker(MessageBrokerRegistry config) {
// 注1
config.enableSimpleBroker(BROKER_SYSTEM_MSG);
// 注2
config.setApplicationDestinationPrefixes