WebSocket代码示例
时间: 2023-07-09 14:30:10 浏览: 93
以下是一个简单的WebSocket代码示例,使用Java的Spring Boot框架:
首先,添加依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
```
然后,创建一个WebSocket处理器类:
```java
@Component
public class WebSocketHandler extends TextWebSocketHandler {
private final List<WebSocketSession> sessions = new CopyOnWriteArrayList<>();
@Override
public void afterConnectionEstablished(WebSocketSession session) throws Exception {
sessions.add(session);
}
@Override
protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
// 处理收到的消息
}
@Override
public void afterConnectionClosed(WebSocketSession session, CloseStatus status) throws Exception {
sessions.remove(session);
}
public void sendMessage(String message) throws IOException {
for (WebSocketSession session : sessions) {
session.sendMessage(new TextMessage(message));
}
}
}
```
在该处理器类里,我们保存了所有连接的WebSocket会话,并实现了处理收到消息、建立连接和关闭连接的方法。还添加了一个`sendMessage`方法,该方法可以向所有连接的会话发送消息。
最后,在Spring Boot的配置文件中添加WebSocket相关配置:
```yaml
spring:
websocket:
servlet:
path: /websocket
```
这样,客户端就可以通过`ws://localhost:8080/websocket`连接到WebSocket服务器了。在客户端发送消息时,服务器会调用`handleTextMessage`方法进行处理,并且可以调用`sendMessage`方法向客户端发送消息。
阅读全文