websocket示例
时间: 2023-08-19 18:13:09 浏览: 53
WebSocket是一种在Web应用程序中实现双向通信的协议。以下是一个WebSocket示例的代码:
```java
// 服务器端
@ServerEndpoint("/websocket")
public class WebSocketServer {
@OnOpen
public void onOpen(Session session) {
// 连接建立时执行的操作
}
@OnMessage
public void onMessage(String message, Session session) {
// 接收到消息时执行的操作
}
@OnClose
public void onClose(Session session) {
// 连接关闭时执行的操作
}
}
// 客户端
@ClientEndpoint
public class WebSocketClient {
@OnOpen
public void onOpen(Session session) {
// 连接建立时执行的操作
}
@OnMessage
public void onMessage(String message, Session session) {
// 接收到消息时执行的操作
}
@OnClose
public void onClose(Session session) {
// 连接关闭时执行的操作
}
}
// 启动类
public class App {
public static void main(String[] args) {
// 启动WebSocket服务器
Server server = new Server("localhost", 8080, "/websocket", WebSocketServer.class);
try {
server.start();
System.out.println("WebSocket server started.");
// 创建WebSocket客户端并连接到服务器
WebSocketContainer container = ContainerProvider.getWebSocketContainer();
Session session = container.connectToServer(WebSocketClient.class, URI.create("ws://localhost:8080/websocket"));
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在这个示例中,服务器端使用`@ServerEndpoint`注解指定了WebSocket的端点URL为"/websocket",客户端使用`@ClientEndpoint`注解。服务器端和客户端都定义了`@OnOpen`、`@OnMessage`和`@OnClose`注解的方法来处理连接建立、接收消息和连接关闭的事件。启动类中启动了WebSocket服务器,并创建了WebSocket客户端并连接到服务器。