用spring boot 實現websocket
阿新 • • 發佈:2019-09-21
import java.io.IOException;
import javax.websocket.OnClose;
import javax.websocket.OnError;
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.Session;
import javax.websocket.server.PathParam;
import javax.websocket.server.ServerEndpoint;
@ServerEndpoint("/websocket/{sid}")
@Component
public class WebSocketServer {
private Session session;
// 接收sid
private String sid = "";
private String traciUrl;
/**
* 連線建立成功呼叫的方法
*/
@OnOpen
public void onOpen(Session session, @PathParam("sid") String sid) {
this.session = session;
}
/**
* 連線關閉呼叫的方法
*/
@OnClose
public void onClose() {
webSocketSet.remove(this);
}
/**
* 收到客戶端訊息後呼叫的方法
*
* @param message
* 客戶端傳送過來的訊息
*/
@OnMessage
public void onMessage(String message, Session session) {
}
/**
*
* @param session
* @param error
*/
@OnError
public void onError(Session session, Throwable error) {
}
/**
* 實現伺服器主動推送
*/
public void sendMessage(String message) throws IOException {
this.session.getBasicRemote().sendText(message);
}
}