MySQLWebSocket案例

一、 环境搭起来

框架用Spring Boot,省心。Maven依赖主要就这几个:

Spring Boot Starter Web:基础Web功能。

Spring Boot Starter Data JPA:操作MySQL数据库。

Spring Boot Starter Websocket:核心,WebSocket支持。

MySQL Connector Java:连接MySQL数据库。

数据库表就简单点,建个表:

实体类(DeviceStatus)和Repository接口(DeviceStatusRepository)就是常规的JPA那一套,这里就不贴代码占篇幅了。

二、 WebSocket核心配置

重点来了,配置WebSocket。我这儿用的是Spring提供的WebSocket API。

先写个配置类,继承:

这里用了SockJS,是为了兼容那些不支持WebSocket的浏览器,算是个降级方案。

然后,搞个Service (),用来模拟设备数据变化,并主动向WebSocket客户端推送。这里用一个定时任务来模拟:

是神器,直接用它就能发消息。这里我们发到 这个目的地。

三、 前端页面连接和接收

前端页面就用简单的HTML + JavaScript,配合SockJS和STOMP客户端库。

前端逻辑很清晰:连接 -> 订阅指定Topic -> 收到消息后解析JSON并更新DOM。

四、 测试和踩坑提醒

测试:启动应用,打开页面。然后在MySQL里手动修改表的字段。等下一个10秒周期,就能在页面上看到数据自动更新了,效果杠杠的。

注意点:

这个案例算是把MySQL数据通过WebSocket实时推送到前端的基本链路跑通了。虽然例子简单,但核心思想都在。兄弟们可以根据自己的业务场景进行扩展和优化,比如更复杂的数据过滤、分房间推送等等。希望这篇记录能帮到正在折腾的你。

相关推荐
努力小周3 小时前
STM32智能安防系统
c语言·stm32·单片机·嵌入式硬件·物联网·计算机网络·pcb工艺
w3296362719 小时前
八、OpenCode 高阶玩法:CLI 自动化、CI/CD 集成与远程协作
运维·ci/cd·自动化·ai编程·开发工具·opencode
brycegao9 小时前
如何搭建标准化 Git 工具流,保障 Android 团队代码质量
android·ci/cd
DXM052110 小时前
第13期|遥感语义分割模型:U-Net核心原理+遥感落地优势
人工智能·python·深度学习·目标检测·随机森林·机器学习·支持向量机
TDengine (老段)10 小时前
TDengine 扫描算子 — TableScan、TagScan 与下推优化
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
Dontla13 小时前
CI/CD前世今生(持续集成、持续交付、持续部署、Jenkins、Github Actions)
ci/cd·github·jenkins
常州晟凯电子科技14 小时前
君正T32/T33开发笔记之快启系统演示程序编译和运行
人工智能·笔记·嵌入式硬件·物联网
小雨青年15 小时前
GitHub Actions 可复用工作流设计模式:把 CI/CD 重复逻辑收起来
ci/cd·设计模式·github
技术硬汉1 天前
DL 平台:DeviceTouch远程维护实战(串口)
物联网·信息与通信·远程工作·iot
青岛前景互联信息技术有限公司1 天前
前景互联·新一代智能接处警系统:AI+大模型+Agent智能接处警一体化解决方案
大数据·人工智能·物联网