import java.net.URI;
import javax.websocket.ContainerProvider;
import javax.websocket.Session;
import javax.websocket.WebSocketContainer;
import javax.websocket.OnOpen;
import javax.websocket.OnMessage;
import javax.websocket.OnClose;
import javax.websocket.ClientEndpoint;
import javax.websocket.EndpointConfig;
import javax.websocket.MessageHandler;
@ClientEndpoint
public class WebSocketClient {
@OnOpen
public void onOpen(Session session) {
System.out.println("Connected to server: " + session.getId());
}
@OnMessage
public void onMessage(String message) {
System.out.println("Received message from server: " + message);
}
@OnClose
public void onClose() {
System.out.println("Connection closed");
}
public static void main(String[] args) {
try {
// 创建WebSocket容器
WebSocketContainer container = ContainerProvider.getWebSocketContainer();
// 连接到WebSocket服务器
Session session = container.connectToServer(WebSocketClient.class, URI.create("ws://example.com/websocket"));
// 发送消息到服务器
session.getBasicRemote().sendText("Hello Server");
// 等待一段时间以接收消息
Thread.sleep(5000);
// 关闭连接
session.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
javax.websocket
相关的包,用于创建和管理WebSocket客户端。@ClientEndpoint
:标记类为WebSocket客户端端点。onOpen
:当客户端成功连接到服务器时调用,打印会话ID。onMessage
:当从服务器接收到消息时调用,打印接收到的消息。onClose
:当连接关闭时调用,打印关闭信息。main
:connectToServer
方法连接到指定的WebSocket服务器。session.getBasicRemote().sendText
发送消息给服务器。Thread.sleep
等待一段时间以便接收消息。Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站