注:需spring4.0及以上版本。
步骤:
1、导入jar包(maven方式)
<!-- Spring websocket -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-websocket</artifactId>
<version>4.3.10.RELEASE</version>
</dependency>
2、编写WebSocketConfig类,用于配置websocket
package com.websocket;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.socket.config.annotation.EnableWebSocket;
import org.springframework.web.socket.config.annotation.WebSocketConfigurer;
import org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry;
@Configuration
@EnableWebMvc
@EnableWebSocket
public class WebSocketConfig extends WebMvcConfigurerAdapter implements WebSocketConfigurer{
@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
//允许连接的域;只能以http或https开头
String[] allowsOrigins = {"https://www.xxx.com"};
//WebIM WebSocket通道
registry.addHandler(WebSocketHandler(), "/websocket").addInterceptors(WebScoketInterceptor());
}
@Bean
public WebSocketHandler WebSocketHandler() {
return WebSocketHandler();
}
@Bean
public WebScoketInterceptor WebScoketInterceptor() {
return new WebScoketInterceptor();
}
}
也可用spring的配置文件:
文件头部添加websocket的xsd文件: