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

相关推荐
会周易的程序员23 分钟前
openplc runtimev4 Docker 部署
运维·c++·物联网·docker·容器·软件工程·iot
一战成名99631 分钟前
AI 模型持续集成流水线:CANN 支持的 DevOps 最佳实践
人工智能·ci/cd·devops
我会一直在的34 分钟前
Devps持续集成
git·ci/cd
acrelwwj21 小时前
智慧照明新引擎,ASL600 4GWJ开启城市照明精细化管理新时代
大数据·经验分享·物联网
石去皿1 天前
【嵌入式就业7】计算机网络核心协议与嵌入式应用:从理论到IoT实战
物联网·计算机网络
lpfasd1231 天前
物联网后端岗位java面试题
java·物联网·php
科技块儿1 天前
物联网设备分布分析需要精准地理信息?支持IPv4IPv6双栈批量解析的IP离线库
物联网·网络协议·tcp/ip
coderzxy1 天前
mbpoll 交叉编译
物联网
中议视控2 天前
可编程网络中央控制系统主机通过红外发射棒控制空调电视等红外设备
网络·物联网·5g
星马梦缘2 天前
EDA彩灯电路绘制
单片机·嵌入式硬件·物联网·pcb·eda·嘉立创