# 待实现功能
* 时间格式转换问题
* ~~待发送消息队列~~
* ~~登录时本地和服务器端消息同步~~
* ~~服务器与本地的文件创建~~
* ~~用户界面的map~~
* ~~本地消息的处理~~
* ~~服务器消息的转发~~
* ~~加好友~~
* ~~建群~~
* 依时间排列的消息列表
* 打开聊天窗时再次点击使得窗口弹出(获得焦点)
* 文件路径问题
## 下一步工作
* 加好友
* 群组功能:
> > 1. 向服务器提交建群申请(成员、群名
>> 2. 服务器向本地传回群ID,并将群名、id群成员保存在服务器
>> 3. 服务器向群成员发送加群申请
>> 4. 服务器接受申请、将群成员更新,并将更新发送给现有群成员
* 发送图片(文件类似)
> > 1. 聊天窗内按下发送图片按钮,选择图片发送
>> 2. 本地将图片放入聊天文件夹中,并给图片重命名
>> 3. 本地通过msg发送聊天记录,通过file发送图片。服务器读取msg后从file读取图片
>> 4. 服务器将图片保存在文件中,并将信息用同样的方式转发给目标用户,转发完毕后删除服务器端图片。
# 更新日志
***
## 210605xjz
> 增加
1. 完善了加好友与加群的逻辑,现在应该没有什么bug了
> 修复
1. 修复了加群时交互错乱的问题
***
## 210530xjz
> 增加
1. 增加了加好友、建群的本地与服务器逻辑
2. 增加了ClientWindow::addMessage(String str)方法,用以在消息展示框展示信息
> 改动
1. 调整了未找到消息记录时的逻辑
> 其他
1. 加好友的格式为:好友1|好友2|好友3|……
2. 加群的格式为:群名:群成员1|群成员2|……
3. 输入格式检查还未写,现在写的好像不能用
4. 现在在主界面创建之前消息就想往MsgList推了,会推失败
5. 有关建群的功能还有相当多的bug
***
## 210529xjz
> 增加
1. 增加了消息列表、消息选项卡。推送消息时需重写消息选项卡中的Send与getMsgString方法
2. 增加了用户信息展示框
3. 增加了加好友与建群的方法接口
> 改动
1. 将好友列表、群组列表、消息列表改为了继承了JPanel类的TargetList
2. 在TargetList中重写了add与remove方法,现在可以直接调用这两个方法以自动调整大小
> 其他
1. 用户名有禁止字符:| ; \n G(还没实装)
2. 发送消息:MsgList.add(new MsgPane(){@override});
***
## 210529nyz
> 增加
补充用户最近聊天消息及时间
## 210528nyz
> 改动
1. 改动用户主面板UI,建立滚动界面;
2. 显示用户头像以及用户名称修改位置
## 210528xjz
> 改动
1. 完善了服务器端的消息暂存
2. 完善了服务器端的群组消息转发
3. 将secondPerson密码改为123456
4. 将消息格式末尾加了一个TargetId--好友为好友名、群组为群Id(过去的消息不受影响)
> 其他
1. 群id格式:'G'+number
***
## 210527xjz
> 增加
1. 增加了服务器端的群组消息分发
> 改动
1. 将聊天窗口设置为可改变大小,并对其中的组件进行了动态调整
***
## 210527nyz
> 增加
1. 增加文件操作类(MyUtil.java)
2. 实现登录时服务器与客户端的同步,包括文件对比、写入的过程
3. 增加缓冲区,实现文件接受的过程
4. 增加本地消息队列
> 改动
1. 重写客户端HandSession类
## 210526xjz
> 增加
1. 增加了群组选项卡,本地群组列表的格式为"群组ID\n群组名",具体见文件
> 改动
1. 将ClientWindow中的hashmap的元素类型由FriendWindow改为了ChatWindow以适应GroupWindow
2. 删除了目前的全部用户信息,进行了重新注册,以测试注册用户功能以及整理一下文件格式.admin:123456;secondPerson:qwerttt
3. 将选项卡的创建改为类的实例化,并适配了群组选项卡
> 修复
1. 修复了用户界面聊天对象默认背景颜色为灰色的问题
> 其他
1. 出现了群组发送消息时的问题
2. 调整了一下信息标签,还没调整完
***
## 210525xjz
> 增加
1. 增加了服务器端对暂存信息的入队
2. 增加了发送图片的自动适配大小功能
> 改动
1. html不好用,换了一种方法插入图片
> 修复
1. 修复了图片的对齐问题
2. 修复了用户输入“|”时的错误逻辑判断,加强了对用户输入的监督
> 其他
1. 服务器端消息队列还没写完,主要还剩对信息的写入文件
***
## 210523xjz
> 增加
1. 增加了服务器端在用户未在线时的消息暂存功能入口
2. 增加了一个程序图标
> 改动
1. 重写了服务器端HandleAsession的代码
> 修复
1. 修复了接收消息格式问题
2. 修复了转发消息队列不生效的问题,但我不明白为什么修好了
> 其他
1. secondPerson消息记录打开时位置不在最下方
2. 转发消息队列不生效
3. Reciever和Sender的线程似乎有问题
***
## 210522xjz
> 增加
1. 增加了消息展示框对双方消息的不同对齐展示
2. 增加了消息展示框对日期与内容的不同颜色展示
3. 增加了创建文件失败时的提示框
4. 增加了聊天窗的html支持,现在可以在里面放图片了(但还不能发图片)
> 改动
1. 在creatNewUser方法中加入了文件与图片文件夹
2. 将聊天记录格式加上了一个标签(TEXT,IMG,FILE)
3. 将服务器端用户密码保存方式改为MD5码保存(不安全,后续可能换为PBKDF2)
> 修复
1. 修复了聊天框没法使用换行的问题:将\n明文保存
> 其他
1. 现在图片格式无法调整:对齐方式、大小、文字环绕等
2. 信息过互联网延迟过高,应该简化与服务器的交互流程
3. 在加载图片的时候如果没有找到图片应该加入一个default
4. 内网穿透软件稳定性不高,而且挂国外节点网速不高
5. 要不要把发信息也放到HandleAsession里面?
***
## 210521xjz
> 增加
1. 实现了局域网内的连接
2. 实现了互联网的连接
3. 增加了服务器端对消息(TEXT)的转发
4. 增加了对用户退出行为服务器端的应对
> 改动
1. 将发送信息的反馈取消,后续将放在用户端的接收器中
> 修复
1. 修复其他账号登录时好友列表加载错误的问题
2. 修复了局域网内连接不上的问题:关闭防火墙
> 其他
1. 有关历史记录在聊天框中展示的问题:
如果聊天记录过多的话应该不能全部展示,那便需要“仅仅展示五十条”之类的操作,为了降低复杂度这里应该从最新的消息向前搜索五十条,这样的话就需要把消息[反向插入展示框中](https://blog.csdn.net/qq_21682469/article/details/78808713)
2. 对于用户的账号密码存储问题,咱们可以加上服务器端的安全措施,就是将账号密码的[哈希值存在服务器端](https://www.cnblogs.com/milantgh/p/3612318.html)。
***
## 210521nyz
> 增加
本地创建新用户;补充服务器创建新用户
服务器发送消息接受初步
> 改动
修改创建窗体位置,使其适用于不同设备
***
## 210519nyz
> 增加
采用map存储打开聊天窗,便于对聊天窗口进行操作
> 改动
修改删除聊天窗机制,现在关闭聊天窗即可释放资源
README以后在下面更新吧,最上面放待完成功能/问题
> 修复
可以无限打开同一聊天窗的bug
***
## 210518nyz
> 增加
1. 初步建立用户主窗口,与聊天窗口建立连接,可多开聊天窗
2. 主窗口初步与服务器相连
> 改动
修改文件读取方式:System.getProperty("user.dir") + "/src/client/users/"
在login中获取用户姓名 优化创建选项卡中滚动窗的代码,提供拓展能力
***
## 210516xjz
> 增加
1. 增加了用户聊天窗口的父类,对其中的大体结构进行了确定
2. 增加了聊天窗口的历史信息读取,消息记录文件应在加好友时创建
3. 增加了服务器端的用户登录输出
> 改动
> 修复
> 其他
1.
服务
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。 包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】: 适用于希望学习不同技术领域的小白或进阶学习者。 可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】: 有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同进步。
资源推荐
资源详情
资源评论
收起资源包目录
Java大作业,基于socket实现的在线多人聊天室,但是写的时候还没学过数据库,存盘方式比较简陋.zip (128个子文件)
2017234(2).docx 154KB
2017234(2).docx 154KB
2017234(2).docx 154KB
jike_17449145587578_pic.gif 54KB
jike_17449145587578_pic.gif 54KB
jike_17449145587578_pic.gif 54KB
jike_126434310339326_pic.gif 2KB
.gitignore 176B
ClientWindow.java 29KB
ChatServer.java 18KB
ChatWindow.java 16KB
ChatClient.java 10KB
MyUtil.java 4KB
MyUtil.java 2KB
Flag.java 654B
Flag.java 654B
77881515.jpeg 37KB
3566556.jpeg 21KB
jike_72518850392348_pic.jpeg 4KB
G123456.jpg 102KB
G123456.jpg 102KB
admin.jpg 58KB
admin.jpg 58KB
admin.jpg 58KB
secondPerson.jpg 27KB
secondPerson.jpg 27KB
secondPerson.jpg 27KB
thirdPerson.jpg 24KB
thirdPerson.jpg 24KB
1.jpg 17KB
1.jpg 17KB
IconDefault.jpg 16KB
file.jpg 12KB
settings.json 267B
userinfo.key 16B
userinfo.key 16B
userinfo.key 16B
userinfo.key 16B
userinfo.key 16B
userinfo.key 16B
README.md 11KB
MANIFEST.MF 53B
1549333770159.png 2.19MB
1549333770159.png 2.19MB
1549333770159.png 2.19MB
icon.png 643KB
Rplot14.png 12KB
Rplot14.png 12KB
Rplot14.png 12KB
secondPerson.txt 7KB
admin.txt 5KB
admin.txt 3KB
G123456.txt 809B
G123456.txt 787B
G948357.txt 323B
TJhat.txt 260B
G948357.txt 143B
secondPerson.txt 132B
newperson.txt 112B
secondPerson.txt 112B
thirdPerson.txt 100B
secondPerson.txt 100B
TJhat.txt 96B
vanilla.txt 96B
MsgQ.txt 63B
friendList.txt 60B
groupList.txt 55B
groupList.txt 55B
TJhat.txt 52B
admin.txt 51B
G522837.txt 49B
G522837.txt 49B
friendList.txt 47B
G948357.txt 46B
admin.txt 43B
groupList.txt 34B
groupList.txt 34B
friendList.txt 30B
friendList.txt 30B
G522837.txt 29B
friendList.txt 27B
friendList.txt 27B
G948357.txt 25B
groupList.txt 21B
groupList.txt 21B
friendList.txt 19B
friendList.txt 19B
friendList.txt 19B
friendList.txt 19B
G123456.txt 19B
friendList.txt 6B
friendList.txt 6B
friendList.txt 6B
G904434.txt 6B
G75386.txt 6B
config.txt 0B
vanilla.txt 0B
G522837.txt 0B
config.txt 0B
groupList.txt 0B
共 128 条
- 1
- 2
资源评论
妄北y
- 粉丝: 1w+
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于SHT25温湿度传感器、FREERTOS、STM32F103C8T6、LCD1602温湿度采集显示系统proteus仿真设计
- C# 屏幕放大取色器 随时随地获取屏幕像素颜色
- 下载安装这个软件.apk
- 【数据集详细解释及案例分析】数据集详细解释及案例分析
- 基于SHT71温湿度传感器、STM32F103C8T6、LCD1602温湿度采集显示系统proteus仿真设计
- 基于TH02温湿度传感器、STM32F103C8T6、LCD1602、FREERTOS的温湿度采集系统proteus仿真设计
- 【TCP-IP协议详细解释及案例分析】TCP-IP协议详细解释及案例分析
- 一文搞懂 LSTM(长短期记忆网络).rar
- 【autosar简介及基本案例解析】autosar简介及基本案例解析
- java模拟斗地主洗牌发牌
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功