spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

本项目使用Spring Boot结合Netty实现了一款简单的在线客服聊天系统,支持一对一及多人聊天室功能。通过实战演练,介绍了项目的搭建过程、运行方式,并提出了当前存在的问题,如聊天记录保存、用户离线消息接收等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

公司的项目需要开发客服模块,之前没有深入了解过网络编程相关技术,这次花点时间学习下.对比了mina和netty,感觉netty优势多些,就学了netty,做个相关项目练练手.

1.项目结构

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

2.新建数据库demo-netty,并导入脚本文件,修改以下配置信息

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

3.运行Application.java启动springbboot内嵌tomcat,默认端口8080,浏览器访问:http://localhost:8080/

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

4.匿名登录,并给客服1发送消息

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

5.客服登录,serv01/123456(注意:必须要先登录着才能收到消息,离线状态无法接收消息)

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

点击有新消息,获取用户列表,点击用户头像获取消息

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

6.多人聊天室

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

项目采用springboot+springmvc+netty-sockeyio实现简单的一对一聊天和聊天室多人聊天,前端比较差,用的是素材模版,所以改得比较戳,项目存在以下若干问题:

1)聊天记录没有保存的,页面一刷新就没有了;

2)匿名用户与客服对话,是把匿名客户端以目标客服为key放入缓存的,但是用户端口连接时,无法清除相关缓存数据map.remove(key,value),我的理解是value值相同,但是对象的指向不同,希望清楚的大神帮忙解答下

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

上面两种方式都无法清除缓存指定数据:

spring boot+mvc+mybatis+netty-sokey.io+html+js实现简单即时通讯聊天系统

3)前端有些逻辑问题

4)给离线的用户发送消息,该用户上线也无法接收到信息

5)一个用户可以找多个客服咨询,一个客服可以服务多个用户,我想过建个多对多的中间表,但是实际做起来感觉不理想;也想过加个字段存放有消息的用户,后来想想也觉得不理想..这个问题解决了,问题1,2,3,4就都不是问题了

6)第一次做即时通讯的东西,出来消息接收发送,对话用户之间的关系依存和消息存放都不知道怎么去处理,请懂的大神提供些思路,不甚感激!


资源下载地址:http://download.youkuaiyun.com/detail/u013198917/9846723

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值