websocket java 即时通信
时间: 2023-11-19 13:07:20 浏览: 33
是一种在单个TCP连接上进行全双工通信的协议,它可以在客户端和服务器之间建立实时通信,而Java-WebSocket是一个开源的Java库,用于在Java应用程序中实现WebSocket协议。使用Java-WebSocket,您可以轻松地实现WebSocket客户端和服务器端,从而实现即时通信。
以下是一个简单的Java-WebSocket示例,演示如何在Java中实现WebSocket即时通信:
```java
import org.java_websocket.WebSocket;
import org.java_websocket.handshake.ClientHandshake;
import org.java_websocket.server.WebSocketServer;
import java.net.InetSocketAddress;
public class MyWebSocketServer extends WebSocketServer {
public MyWebSocketServer(int port) {
super(new InetSocketAddress(port));
}
@Override
public void onOpen(WebSocket webSocket, ClientHandshake clientHandshake) {
System.out.println("WebSocket opened: " + webSocket.getRemoteSocketAddress());
}
@Override
public void onClose(WebSocket webSocket, int i, String s, boolean b) {
System.out.println("WebSocket closed: " + webSocket.getRemoteSocketAddress());
}
@Override
public void onMessage(WebSocket webSocket, String s) {
System.out.println("WebSocket message received: " + s);
webSocket.send("Server received message: " + s);
}
@Override
public void onError(WebSocket webSocket, Exception e) {
System.out.println("WebSocket error: " + e.getMessage());
}
public static void main(String[] args) {
MyWebSocketServer server = new MyWebSocketServer(8080);
server.start();
System.out.println("WebSocket server started on port: " + server.getPort());
}
}
```
在此示例中,我们创建了一个WebSocket服务器,并实现了四个回调方法:onOpen,onClose,onMessage和onError。当WebSocket连接打开时,onOpen方法将被调用,当WebSocket连接关闭时,onClose方法将被调用,当WebSocket接收到消息时,onMessage方法将被调用,当WebSocket发生错误时,onError方法将被调用。在onMessage方法中,我们简单地将接收到的消息发送回客户端。