用java帮我写一个webSocket长链接代码示例
时间: 2024-04-11 08:25:56 浏览: 115
当然,下面是一个使用 Java 实现 WebSocket 长连接的示例代码:
```java
import javax.websocket.*;
import javax.websocket.server.ServerEndpoint;
import java.io.IOException;
@ServerEndpoint("/websocket")
public class WebSocketServer {
@OnOpen
public void onOpen(Session session) {
System.out.println("WebSocket opened: " + session.getId());
}
@OnMessage
public void onMessage(String message, Session session) throws IOException {
System.out.println("Received message: " + message);
session.getBasicRemote().sendText("Server received message: " + message);
}
@OnClose
public void onClose(Session session) {
System.out.println("WebSocket closed: " + session.getId());
}
@OnError
public void onError(Throwable error) {
System.out.println("WebSocket error: " + error.getMessage());
}
}
```
上述代码使用了 Java 的 javax.websocket API,通过 `@ServerEndpoint` 注解定义了一个 WebSocket 服务器端的端点。
当客户端建立 WebSocket 连接时,`onOpen` 方法会被调用,可以在此方法中处理一些初始化操作。
当客户端发送消息时,`onMessage` 方法会被调用,可以在此方法中处理接收到的消息,并通过 `session.getBasicRemote().sendText()` 方法向客户端发送响应消息。
当客户端关闭 WebSocket 连接时,`onClose` 方法会被调用,可以在此方法中进行一些清理工作。
如果发生错误,`onError` 方法会被调用,可以在此方法中处理异常情况。
以上是一个简单的示例代码,你可以根据自己的需求进行扩展和修改。
阅读全文