1 为什么选择这个项目
(1)有趣
(2)设计到Java各个方面的技术
- 项目框架设计
- Java面向对象编程
- 网络编程
- 多线程
- IO流
- MySQL
(3)巩固旧知识,学习新知识
2 项目开发流程
2.1 需求分析
(1)用户登录
(2)拉取在线用户列表
(3)无异常退出(客户端、服务端)
(4)私聊
(5)群聊
(6)发文件
(7)服务器推送新闻
2.2 界面设计
2.2.1 用户登录
2.2.2 拉取在线用户列表
2.2.3 私聊
2.2.4 群聊
2.2.5 发文件
2.2.6 文件服务器推送新闻
3 功能实现
3.1 用户登录
3.1.1 功能说明
因为还没有学习数据库,我们人为规定 用户名/id = 100,密码123456 就可以登录,其他用户不能登录
后面使用HashMap模拟数据库,就可以实现多个用户登录
3.1.2 思路分析 + 程序框架图
3.1.2 代码实现
3.2 拉取在线用户列表
3.2.1 功能说明
3.2.2 思路分析 + 代码实现
3.3 无异常退出
3.3.1 功能说明
实现客户端和服务端无异常地正常退出
3.3.2 思路分析 + 代码实现
3.4 私聊
3.4.1 功能说明
3.4.2 思路分析 + 代码实现
3.5 群聊
3.5.1 功能说明
3.5.2 思路分析 + 代码实现
3.6 发文件
3.6.1 功能说明
3.6.2 思路分析 + 代码实现
3.7 服务器推送新闻
3.7.1 功能说明
3.7.2 思路分析 + 代码实现
3.8 发送离线消息/文件
3.8.1 功能说明
(1)实现离线留言,如果某个用户没有在线,当登录成功后,可以接受离线的消息
(2)实现离线发文件,如果某个用户没有在线,当登录后,可以接受离线的文件