java 实现 websocket_Java实现websocket(通过端口直接连接)
时间: 2023-11-14 17:05:37 浏览: 159
WebSocket推送端和接收端实现
要在 Java 中实现 WebSocket,可以使用 Java WebSocket API。以下是一个简单的示例:
```java
import javax.websocket.*;
import java.net.URI;
@ClientEndpoint
public class MyWebSocketClient {
@OnOpen
public void onOpen(Session session) {
System.out.println("Connected to endpoint: " + session.getBasicRemote());
}
@OnMessage
public void onMessage(String message) {
System.out.println("Received message: " + message);
}
public static void main(String[] args) {
WebSocketContainer container = ContainerProvider.getWebSocketContainer();
String uri = "ws://localhost:8080/myendpoint";
try {
Session session = container.connectToServer(MyWebSocketClient.class, URI.create(uri));
session.getBasicRemote().sendText("Hello, World!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在上面的示例中,我们定义了一个 `MyWebSocketClient` 类,并使用 `@ClientEndpoint` 注解将其标记为 WebSocket 客户端端点。我们还定义了两个注解方法,`onOpen()` 和 `onMessage()`,分别在连接建立和接收到消息时被调用。在 `main()` 方法中,我们使用 `WebSocketContainer` 来连接到 WebSocket 终端点,并向其发送一条消息。
在使用上述代码之前,需要确保已经引入 Java WebSocket API 的依赖项。可以使用以下 Maven 依赖项:
```xml
<dependency>
<groupId>javax.websocket</groupId>
<artifactId>javax.websocket-api</artifactId>
<version>1.1</version>
</dependency>
```
注意,以上代码仅适用于通过端口直接连接的 WebSocket。如果需要使用 SSL/TLS 连接,或者需要进行身份验证等操作,需要进行额外的配置。
阅读全文