闲来无事突然想到自己对webSocket的用法还是很模糊,只知道是长连接什么的,所以打算自己搭建一套springboot+webSocket的demo。
WebSocket 是一种网络通信协议。RFC6455 定义了它的通信标准。
WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。
言归正传直接上代码:
1.首先创建一个springboot项目,这个就不多说了哈,先把项目结构贴上来
2.开始整合webSocket,首先pom文件引入相关jar包
下面在这个的引入只要是由于存在相关页面动态跳转,引入thymeleaf模板引擎,实现页面动态跳转,并传入model值
3.配置webSocket配置文件
4.配置webSocket服务端
5.配置相应的controller,方便接口调用
6.配置一个前端页面以便在前端创建webSocket连接
基本上到这步如果按章步骤的的话应该就成功了,注意,webSocket之间是根据刚才定义的cid连保持一致性的
7.最后测试一下
http://localhost:8080/checkcenter/socket/20
然后试着发消息
http://localhost:8080/checkcenter/socket/push/20?message=12345
接收成功,成功整合
现在springboot整合webSocket就成功了,因为是随意搭建的小demo只是实现了基本原理,阐述一下里面的几个点:
由于需要用到服务端动态跳转页面(使用el表达式获取model值),所以在spingboot中需要整合模板引擎thyemleaf,记住,使用模板引擎后,动态跳转之后页面路径默认在resource/template下
还有就是前端页面中获取model值的方法需要说明下(可能因为我对前端不熟悉吧哈哈哈哈),这还是从之前项目前端页面学来的,才能用thymleaf的表达式th
附上GitHub地址:https://github.com/zhuangxincheng/springboot-webSocket