springboot整合websocket

上传者: jlonghou | 上传时间: 2022-05-13 23:22:21 | 文件大小: 68.53MB | 文件类型: RAR
传统的HTTP协议,一般通过向服务器发送请求,拉取数据实现半双工通信,缺点是服务器难以直接向浏览器下发消息,因此,websocket协议应运而生,可用于向建立连接的浏览器主动下发任意数据(PUSH)。本项目基于Spring平台,整合websocket协议,实现一个简易web聊天室的功能。主要特性如下: 1.包含聊天室登录、退出的功能。登录时,浏览器自动向服务器发起websocket连接,退出时自动切断。登录页面为http://localhost:8006/login 2.账号Jon或者TOM,密码是1234,登录后,用户可查看到聊天室在线的用户列表,我们在服务器上通过一个hashmap始终记录了当前在线的用户列表; 3.登录的用户可以点击一个在线的其他用户,并给他发送消息,消息先提交给服务器,在通过服务器转发给另一端用户; 4.支持群发消息的功能,使用时,服务器会将收到的消息群发给当前在线的所有用户; 5.添加好友上线提醒和下线提醒的功能,当有好友上线或下线时自动通知所有其他在线人,不要刷新页面可看到实时在线用户列表。

文件下载

资源详情

[{"title":"( 29 个子文件 68.53MB ) springboot整合websocket","children":[{"title":"Spring-websocket-master","children":[{"title":"pom.xml <span style='color:#111;'> 4.15KB </span>","children":null,"spread":false},{"title":"src","children":[{"title":"main","children":[{"title":"resources","children":[{"title":"mybatis-config.xml <span style='color:#111;'> 2.19KB </span>","children":null,"spread":false},{"title":"application.yml <span style='color:#111;'> 253B </span>","children":null,"spread":false},{"title":"templates","children":[{"title":"chatroom.html <span style='color:#111;'> 5.58KB </span>","children":null,"spread":false},{"title":"fail.html <span style='color:#111;'> 67B </span>","children":null,"spread":false},{"title":"login.html <span style='color:#111;'> 1.20KB </span>","children":null,"spread":false}],"spread":true},{"title":"log4j2.xml <span style='color:#111;'> 3.90KB </span>","children":null,"spread":false},{"title":"static","children":[{"title":"css","children":[{"title":"jquery.bootgrid.min.css <span style='color:#111;'> 3.60KB </span>","children":null,"spread":false},{"title":"bootstrap-datetimepicker.min.css <span style='color:#111;'> 10.99KB </span>","children":null,"spread":false}],"spread":true},{"title":"js","children":[{"title":"jquery.bootgrid.min.js <span style='color:#111;'> 23.43KB </span>","children":null,"spread":false},{"title":"jquery-1.12.3.min.js <span style='color:#111;'> 94.90KB </span>","children":null,"spread":false},{"title":"bootstrap-datetimepicker.min.js <span style='color:#111;'> 36.83KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"mapper","children":[{"title":"LoginMapper.xml <span style='color:#111;'> 792B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"java","children":[{"title":"boot","children":[{"title":"spring","children":[{"title":"config","children":[{"title":"MyDataSource.java <span style='color:#111;'> 2.62KB </span>","children":null,"spread":false},{"title":"WebSocketConfig.java <span style='color:#111;'> 1021B </span>","children":null,"spread":false}],"spread":true},{"title":"po","children":[{"title":"User.java <span style='color:#111;'> 402B </span>","children":null,"spread":false},{"title":"MSG.java <span style='color:#111;'> 225B </span>","children":null,"spread":false},{"title":"Staff.java <span style='color:#111;'> 1.28KB </span>","children":null,"spread":false},{"title":"Message.java <span style='color:#111;'> 775B </span>","children":null,"spread":false}],"spread":true},{"title":"Application.java <span style='color:#111;'> 422B </span>","children":null,"spread":false},{"title":"mapper","children":[{"title":"LoginMapper.java <span style='color:#111;'> 155B </span>","children":null,"spread":false}],"spread":true},{"title":"controller","children":[{"title":"Login.java <span style='color:#111;'> 1.52KB </span>","children":null,"spread":false},{"title":"ChatController.java <span style='color:#111;'> 1.39KB </span>","children":null,"spread":false}],"spread":true},{"title":"service","children":[{"title":"LoginService.java <span style='color:#111;'> 163B </span>","children":null,"spread":false},{"title":"WebSocketServer.java <span style='color:#111;'> 3.96KB </span>","children":null,"spread":false},{"title":"impl","children":[{"title":"LoginServiceImpl.java <span style='color:#111;'> 1.09KB </span>","children":null,"spread":false}],"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":".gitignore <span style='color:#111;'> 414B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 7.69KB </span>","children":null,"spread":false},{"title":"staff.sql <span style='color:#111;'> 2.18KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明