曹阳的博客 仅用于学习和分享

兄弟连在线考试系统

2019-11-15

JavaSE小项目:兄弟连在线考试系统

今天内容:
1.兄弟连在线考试系统

1.兄弟连在线考试系统

1.1 项目目标

(1)总结和使用JavaSE阶段所学的内容。
(2)初识项目的架构以及锻炼基本软件开发能力。

1.2 软件开发的流程

需求分析文档 => 概要设计文档 => 详细设计文档 => 编码和测试 => 安装和调试
=> 维护和升级

1.3 项目的功能分析

兄弟连在线考试系统:
(1)学员系统
a.用户模块
登录、修改密码、退出
b.考试模块
开始考试、查看成绩、导出成绩

(2)管理员系统
a.学员管理
增加学员、删除学员、修改学员、查找学员、…
b.试题管理
增加试题、删除试题、修改试题、查找试题、…

1.4 项目的架构

项目采用C/S架构进行设计,分为3层分别处理,具体流程:
a.启动客户端让客户根据界面进行业务的选择并将相关信息发送给服务器;
b.服务器通过访问数据库的方式进行业务处理并将处理结果发送给客户端;
c.客户端将处理结果显示给客户;

1.5 实现方式

(1)客户端与服务器之间采用基于tcp协议的网络编程进行通信;
(2)使用ObjectOutputStream和ObjectInputStream类进行对象的传输;
(3)使用字符串的类型作为客户端与服务器业务功能的标志;
如:
当客户端发送给服务器的类型是”userCheck”时,则服务器按照学员登录处理
当客户端发送给服务器的类型是”managerCheck”时,则服务器按照管理员处理

当服务器给客户端发送成功的结果时,服务器可以将类型改为"success"再回发  
当服务器给客户端发送失败的结果时,服务器可以将类型改为"fail"再回发  

1.6 学员管理功能的实现方式

学员管理界面 => 选择增加学员 => 从键盘输入学员用户名和密码信息并发送服务器
=> 服务器接收到学员信息后添加到集合中 => 将增加的结果回发给客户端 => 客户端接收到回发的处理结果后给出提示即可。

由于Java语言中不便于直接对文件内容增删改查,因此实现管理功能的思路如下:
a.当项目启动时,将文件中所有学员信息读取到List集合中;
b.在集合中对学员信息进行增删改查操作;
c.当项目退出时,将集合中所有学员信息写入到文件中;


Similar Posts

上一篇 Java线程

Content