项目需求
- 单页面,进入即登陆,系统随机分配链接用户名
- 存储聊天信息消息
- 聊天群发功能
项目架构

功能实现思路
对于Netty的集成是相对简易,配置对应的Handler,在SpringBoot启动的时候,注入并启动对应的Netty监听。前端
- 对于前端页面而言,是单页面,进入后它会自动与写死的WebSocket链接通讯,Netty会自动监听新链接的接入,当新链接创建,咱们经过工具类随机生成一个名称,并以键值对进行存储。
- 而对于消息的监听,则直接进行了子链接与其余链接的处理,在获取到消息的时候,服务器再向全部的客户端页面从新群发,且在群发的时候进行判断,若是是本来发送的链接则一个格式,其余接受的则另外一个格式,这里方便前端进行样式处理。
- 同时在进行消息监听的时候,全部接受到的消息,服务器都会作本地临时存储处理,以键值对的形式存储用户的聊天消息。
- 在链接断开、用户离线后,调用异步方法,将临时存储库中的聊天消息存储到数据库中
效果展现


GitHub地址
项目名:InChatgit
项目地址:https://github.com/UncleCatMy...github
项目介绍:基于Netty4与SpringBoot,聊天室WebSocket(文字图片)加API调用Netty长连接执行发送消息(在线数、用户列表)、Iot物联网-MQTT协议、TCP/IP协议单片机通讯,异步存储聊天数据数据库
若是本文对你有所帮助,欢迎关注我的技术公众号服务器
