使用SpringBoot演示一個簡單的基于WebSocket通信示例。
創(chuàng)建SpringBoot工程通過Intellij IDEA工具創(chuàng)建一個新的SpringBoot工程,并添加啟動類WebsocketApplication。添加依賴包在pom.xml文件中引入netty
創(chuàng)建SpringBoot工程
通過Intellij IDEA工具創(chuàng)建一個新的SpringBoot工程,并添加啟動類WebsocketApplication。
添加依賴包
在pom.xml文件中引入netty-websocket-spring-boot-starter和spring-boot-starter-web兩個依賴包,如下所示:
```xml
```
配置WebSocket
添加配置注入ServerEndpointExporter,用于自動注冊所有的@ServerEndpoint注解,如下所示:
```java
@Configuration
public class WebSocketConfig {
@Bean
public ServerEndpointExporter serverEndpointExporter() {
return new ServerEndpointExporter();
}
}
```
編寫WebSocket服務端代碼
在WebSocketServer類上添加@ServerEndpoint注解,并設置WebSocket的port、path等信息,如下所示:
```java
@ServerEndpoint("/websocket")
public class WebSocketServer {
@OnOpen
public void onOpen(Session session) {
// 連接建立時的操作
}
@OnClose
public void onClose(Session session) {
// 連接關閉時的操作
}
@OnMessage
public void onMessage(String message, Session session) {
// 接收到消息時的操作
}
@OnError
public void onError(Throwable error) {
// 發(fā)生錯誤時的操作
}
}
```
編寫WebSocket客戶端代碼
在瀏覽器端新建一個文件,實現一個簡單的WebSocket實例,如下所示:
```html
```
演示驗證
打開瀏覽器,訪問頁面。在輸入框中輸入測試字符,點擊發(fā)送按鈕即可向服務器發(fā)送消息。服務器收到消息后會將消息返回給客戶端,并在頁面上顯示接收到的消息。
這樣就成功建立了WebSocket連接,并進行了簡單的通信。
注意:在實際應用中,需要根據具體需求來處理WebSocket的業(yè)務邏輯,并進行相應的安全性控制和異常處理。