SpringBoot向前端實時輸出日誌

2021-10-13 07:27:16 字數 1054 閱讀 4694

傳統的http請求只能由客戶端發起,而服務端要想給客戶端源源不斷的傳送資料,必須由客戶端不斷的向服務端發起請求,ajax輪詢,這種方式顯然更加浪費開銷。

websocket是html5提供的一種在單個tcp連線進行全雙工的通訊協議。

瀏覽器和伺服器只需要乙個握手動作,就形成了一條快速通道,兩者之間即可方便的資料持續互傳,直到客戶端或者伺服器中的某一方主動關閉連線。

使用linux的tail -f讀取伺服器日誌,在前端實時展示。

新增依賴

org.springframework.boot

spring-boot-starter-websocket

註冊websocket服務

@configuration

public class websocketconfig

}

編寫controller

@serverendpoint("/log")

@restcontroller

public class websocketcontroller catch (ioexception e)

}/**

* websocket請求關閉

*/@onclose

public void onclose() catch (exception e)

if(process != null)

process.destroy();

}@onerror

public void onerror(throwable thr)

}

public class tailflogthread extends thread 

@override

public void run()

} catch (ioexception e)

}}

前端html

啟動專案,訪問正常介面,有了!

springboot向前端頁面實時列印日誌

輸出格式,用系統的,不然你輸出的東西 不會解析 layoutlayout override if eventobject null eventobject.getmessage null catch exception e serverendpoint logutil slf4j restcontr...

前端窗體實時重新整理

本次實現的功能 刷卡。介面連上刷卡機,當沒有卡時,提示 尋卡失敗 有卡時,直接獲取卡的物理卡號,因為使用的是建立的生命週期函式,只能獲取一次卡號,如果進行換卡時,需要進行重新整理介面,所以就有了讓窗體實時重新整理的功能,本次設定5秒一重新整理,通過if判斷,當卡號框不為空時,呼叫isend方法,進行...

springboot整合資源搭建實時平台

建議在 linux上執行,elk在windows上支援得不好,另外需要jdk1.8 的支援,需要提前安裝好jdk.cd usr local mkdir logstash tar zxvf logstash 5.3.2.tar.gz mv logstash 5.3.2 usr local logsta...