java 如何利用websocket 实现后台通知消息
时间: 2023-07-18 21:18:04 浏览: 99
Java中websocket消息推送的实现代码
Java可以利用WebSocket API实现后台通知消息。WebSocket是一种双向通信协议,它可以在浏览器和服务器之间建立一个持久的连接,使得服务器可以主动向客户端发送消息,而不需要客户端发送请求。下面是一个简单的Java WebSocket示例:
1. 首先,在服务器端创建一个WebSocket服务器:
```
Server server = new Server(8080);
WebSocketHandler handler = new WebSocketHandler() {
@Override
public void configure(WebSocketServletFactory factory) {
factory.register(MyWebSocket.class);
}
};
server.setHandler(handler);
server.start();
```
2. 然后,在服务器端创建一个WebSocket处理器:
```
@WebSocket
public class MyWebSocket {
private Session session;
@OnWebSocketConnect
public void onConnect(Session session) {
this.session = session;
}
@OnWebSocketMessage
public void onMessage(String message) {
// 处理接收到的消息
}
public void send(String message) throws IOException {
session.getRemote().sendString(message);
}
}
```
3. 最后,在服务器端调用WebSocket处理器的send()方法向客户端发送消息:
```
MyWebSocket myWebSocket = new MyWebSocket();
myWebSocket.send("Hello, world!");
```
客户端可以使用WebSocket API接收服务器发送的消息:
```
var socket = new WebSocket('ws://localhost:8080');
socket.onmessage = function(event) {
var message = event.data;
// 处理接收到的消息
};
```
阅读全文