java聊天室控制台实现

软件协会第一程序设计大赛

参赛文档

作品名称:   软件协会系统设计(初级)          

作  者: **          

填写日期: 2022.5.28

  1. 需求分析

软件协会系统设计(初级)项目一方面是为了巩固javaSE的知识点,主要体现在对文件输入输出流、基于TCP/IP协议的网络编程、JDBC数据库连接技术三部分的使用,另一方面是对软件协会更完善的体系设想。

项目完成的主要功能如图1-1:

(1-1)

说明:借鉴于模拟QQ控制台的基本功能开发,但主体设计框架依旧是自己设想完成

  1. 概要设计

2.1 client和server结构设计:

 



2.2数据库设计:

user表:用户信息

connect_user表:朋友关系

offline_news表:离线消息

  1. 详细设计

3.1用户注册

 

3.2 协会所有成员显示流程分析

 

3.3退出登录

总结:功能服务大致流程

 

  1. 主要测试

说明:视频中未展示部分逻辑错误的处理,但在程序中已做存在

例如添加好友的对象不能为自己

  1. 安装及使用

使用IDEA打开server和client运行即可

1.如果都装在本机直接运行即可,若在不同主机上需修改client端ClientConnectServerThread.connectByName为server端IP或域名

2. server端druid.properties修改数据库信息

  1. 项目总结

6.1在项目中遇到的主要难题:

  1. 主体框架的设计。在编写程序时做过多次server和client端大小规模结构修改,主要是由于前期设计阶段考虑不充分,导致在开发过程中对各类进行多次修改调整。
  2. 功能实现的合理性。在对某一功能进行分析时考虑不到位,比如说添加好友,本应该是得到对方同意方可添加为好友,但在该项目中是直接默认同意(但还是有申请箱查看通知的功能实现),主要原因是作为基于控制台开发的项目,会使得菜单结构更为复杂难懂,如果是web项目则会明朗很多。
  3. 存在代码冗余的问题。有些部分即使多次重复出现一条语句也不太好化简。

6.2后续升级

  1. 普通成员的功能完善。包括通过软协币发布提问任务,上传文件等。
  2. 管理员的功能实现。包括发布公告等。
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是谢添啊

感谢你的支持,我会继续加油的

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值