Springboot整合Websocket案例(後端向前端主動推送消息)

2021-01-07 愚公要移山1

在手機上相信都有來自伺服器的推送消息,比如一些及時的新聞信息,這篇文章主要就是實現這個功能,只演示一個基本的案例。使用的是websocket技術。

一、什麼是websocket

WebSocket協議是基於TCP的一種新的網絡協議。它實現了客戶端與伺服器全雙工通信,學過計算機網絡都知道,既然是全雙工,就說明了伺服器可以主動發送信息給客戶端。這與我們的推送技術或者是多人在線聊天的功能不謀而合。

為什麼不使用HTTP 協議呢?這是因為HTTP是單工通信,通信只能由客戶端發起,客戶端請求一下,伺服器處理一下,這就太麻煩了。於是websocket應運而生。

下面我們就直接開始使用Springboot開始整合。以下案例都在我自己的電腦上測試成功,你可以根據自己的功能進行修改即可。

二、整合websocket

1、環境配置

下面我們新建一個普通的Springboot項目。

2、添加依賴

3、在application.properties文件修改埠號

一句話:server.port=8081

4、新建config包,創建WebSocketConfig類

5、新建service包,創建WebSocketServer類

6、新建controller包,創建Mycontroller類

7、新建一個websocket.html頁面

現在開發伺服器和網頁就可以看到效果了。一般情況下Springboot2+Netty+Websocket的組合方式更加的常用一下。這個只是給出了一個基本的案例,你可以根據自己的需求進行更改。

相關焦點

  • SpringBoot+Netty+Websocket整合案例(實現基本的聊天功能)
    之前使用Springboot整合了websocket,實現了一個後端向前端推送信息的基本小案例,這篇文章主要是增加了一個新的框架就是Netty,實現一個高性能的websocket伺服器,並結合前端代碼,實現一個基本的聊天功能。你可以根據自己的業務需求進行更改。
  • Spring Boot 集成 WebSocket
    在一次項目開發中,使用到了Netty網絡應用框架,以及MQTT進行消息數據的收發,這其中需要後臺來將獲取到的消息主動推送給前端,於是就使用到了MQTT,特此記錄一下。 一、什麼是websocket? WebSocket協議是基於TCP的一種新的網絡協議。
  • 搭建websocket消息推送服務,必須要考慮的幾個問題
    這次主要從搭建websocket服務的基本功能和特性方面做一些分享,下次有機會再從構建一個高可用websocket時要面對的高並發,海量消息,集群容災,橫向擴展,以及自動化運維等方面進更多的分享。另外還有兩個目的:服務端檢測到某個客戶端遲遲沒有心跳過來可以主動關閉通道,讓它下線;客戶端檢測到某個服務端遲遲沒有響應心跳也能重連獲取一個新的連接。2.建立具有良好兼容性的客戶端SDK雖說現在主流瀏覽器都支持websocket,但在編碼中還是會遇到瀏覽器兼容性問題,而且通過websocket通信的客戶端早已不僅限於各種web瀏覽器,還包括越來越多的APP,小程序。
  • springboot整合redis簡單案例
    前言:這裡簡單介紹下springboot整合redis(window版),以及簡單的測試demo。根據當前自己電腦的系統下載對應的redis版本,我這裡是以window版本作為測試的 demo。下載完直接解壓到自定義的目錄,如下:雙擊運行redis-server.exe,如下說明redis啟動成功:在創建的springboot項目的配置文件中,配置如下:創建配置類:
  • 簡單聊聊 WebSocket
    點擊上方「前端教程」,選擇「星標」每天前端開發乾貨第一時間送達!
  • spring security 整合 springboot 入門案例
    序言前面我們學習了 spring security 與 springmvc 的整合入門教程。這一節我們來學習一下 spring security 與 springboot 整合,為了力求簡單,此處不演示資料庫相關操作。
  • 基於SpringBoot和Vue的企業級中後臺項目
    2020年最新的常問企業面試題大全以及答案免費領取大家想看什麼類型的文章呢留言告訴亦夏哦,亦夏會在一周內進行推送~簡介>SpringBoot和Vue,前後端分離,我們開源一套漂亮的代碼和一套整潔的代碼規範,讓大家在這浮躁的代碼世界裡感受到一股把代碼寫好的清流!
  • 使用Go構建實時消息系統
    當我說實時消息時,我指的是你向應用程式客戶端發送的消息,作為對應用程式中發生的某些事件的反應。這種消息的重要特性是它幾乎立即傳遞給客戶端 - 在後端發送之後的幾毫秒內。這種消息在多人遊戲,聊天室,動態計數器,實時圖表等實踐中非常有用。實時消息的即時性質要求它通過持久連接從伺服器推送到客戶端。當客戶定期詢問伺服器更新時的輪詢策略在這裡不是很好的選擇。
  • 記錄springboot接收post和get兩種方式提交數據的不同方法
    剛開始接觸前端開發框架uni-app想通過寫個簡單的前端登錄請求到後端服務,不曾想遇到了很多問題。問題一:服務端接收不到請求。問題二:服務端接收不到請求發送過來的參數信息。後端伺服器才可以接收到移動端發送的請求。問題二開始:場景描述:簡單寫了一個登錄,通過ajax提交用戶名和密碼到服務端 ,服務端接收參數後返回登錄成功信息。問題描述:服務端可以接收到請求,但是參數卻始終是null。
  • workerman搭建websocket入門教程,簡單實用
    後端能實現websocket的語方很多,例如Node.js,Go,Python,dotnet core,java。websocket與http的區別當然php也可以做到,只是要依賴這篇要展開說的Workerman。
  • springboot+jpa+thymeleaf實現信息增刪改查功能
  • 「全棧之路」Web前端開發的後端指南
    發現自己學過的 Redis、 Elasticsearch和 DNS等其實都屬於後端知識體系範疇。在本文中,我將嘗試總結前端須知的後端體系入門。無論你的動機是什麼,這個體系裡都有你想要了解或學習的東西:存儲和服務如何結合在一起?什麼時候(或為什麼)我需要用到這個?全棧之路該怎麼走?
  • 無需後端,小程序全自動定時推送模板消息系統
    ,所以沒有編寫也沒必要編寫後端服務。我們只需要使用古人云小程序開發平臺的推送API+任務腳本功能,就可以實現一個全自動的每天定時爬取更新系統啦!開始首先當然是註冊並配置好古人云小程序的vPush SDK(詳情請訪問官網:mssnn.cn,文檔:doc.mssnn.cn)然後創建一個推送API(請自行設置好推送模板,比如我採用的是日程提醒)
  • 前端和後端哪個工資高?
    IT行業的前端和後端哪個行業工資會更高一點兒呢?這個問題對於想要進入這個行業的人可能是有些不太清楚的,今天就詳細來說一下前端和後端的薪資情況。在整體這個行業上,大部分人都會覺得後端的薪資會比前端的要高,光從數據上看是沒有問題的。但是由於前端的反正沒有後端早,前端主要是10年左右才開始快速發展。在高級工程師上數量來說肯定是後端的工程師數量更多,整體的薪資也會更高一點兒,但是具體隨著工作時間的薪資變化是什麼樣的呢?
  • WebSocket能幹些啥?
    1)通知功能:保持一個長連接,當服務端遊新的消息,能夠實時的推送到使用方。像知乎的點讚通知、評論等,都可以使用WebSocket通信。某些使用H5的客戶端,為了簡化開發,也會使用WebSocket進行消息的通知,由於它是實時推送的,會有更好的用戶體驗。
  • 一文看懂前端和後端開發
    前端和後端的技術棧比較4、前端和後端開發者,哪個更好?做前端開發還是後端開發,除了技術方面的東西,還要看什麼對你來說更為重要。如果美學和產品感覺方面的東西對你來說更重要,那麼你可能會傾向於選擇前端技術。
  • web前端和後端的區別 web前端開發薪資
    web前端和後端的區別 Web前端: 顧名思義是來做Web的前端的。我們這裡所說的前端泛指Web前端,也就是在Web應用中用戶可以看得見碰得著的東西。包括Web頁面的結構、Web的外觀視覺表現以及Web層面的交互實現。
  • 酷工作丨安徳醫智科技招前端/後端/測試等崗位、堅果智能校招/社招、Sea Group 前端/後端/測試/數據
    點擊閱讀原文進入社區聯繫意向公司,還有更多工作機會可選哦~更多合作可發送郵件諮詢:bd@segmentfault.com安徳醫智科技有限公司丨高級前端、後端、測試、iOS、Android、架構師軟體測試工程師職位描述:1.對公司產品
  • 【好程式設計師獨家】100道前端面試題(精選版 含答案)
    4.webSocket(了解性拓展)服務端推送websocket和sse場景及應用應用場景都可以進行服務端推送,並且都是使用長連接來進行.但兩者的實現又有一點不同,sse仍使用http協議,並且使用相同的連結發送正常的http協議報文.而websocket是使用http協議進行握手,然後再使用同一個連結進行websocket
  • 想找IT培訓,前端好還是後端好?
    圍繞這個問題前端和後端項目部進行了一場「辯論賽」我在這兒整理並分享給大家關於後端:1後端是一個系統通常是看不見的但是卻很重要類似電腦的核心處理器2如果一個後端系統出現不穩定調試是非常麻煩通常你可以首選日誌