开发一套标准化考试系统,要求通过该系统完成多个科目的标准化考试工作。考试开始时,考生在客户端机器上使用学号和密码登录进入考试系统,如下:

java考试系统强制结束考试怎么做_客户端

所有考生的信息(包含学号,姓名和密码)在服务器端的student.cfg文件中保存,该文件的保存格式为:“学号:姓名:密码”,如下:

java考试系统强制结束考试怎么做_客户端_02

登录成功后进入选择科目界面,考生选择一门考试科目,如下:

java考试系统强制结束考试怎么做_客户端_03

所有考试科目的列表在服务器端的subject.cfg文件中保存,该文件不仅保存科目列表,还保存了与科目对应的试题文件的文件名,格式为:“科目名=试题文件名”,如下:

java考试系统强制结束考试怎么做_java考试系统强制结束考试怎么做_04

考生选择考试科目后,程序将从服务器接收该科目的试题,并进入考试主界面,如下:

java考试系统强制结束考试怎么做_服务器端_05

每门科目的考试试题保存在服务器端的一个试题文件中,试题文件的格式如下:

java考试系统强制结束考试怎么做_客户端_06

每5行构成一道试题,其中第一行为试题的题干,以下4行为试题的4个选项,并且在正确选项的行首用“”来标示。

考试完成后考生点击主界面上的“交卷”按钮,程序将自动计算考生的得分,并将得分发送给服务器,保存在服务器的*.sco文件中,每门科目都有一个相应的文件,该文件的格式为:

“学号:成绩”,如下:

java考试系统强制结束考试怎么做_服务器端_07

为完成以上程序,定义以下包及类:

java考试系统强制结束考试怎么做_服务器端_08

1. 客户端和服务器端的通信方式登录请求客户端发送数据:学号、密码

服务器端返回的数据:学生对象和当前能提供的考试科目列表

选择考试科目客户端发送数据:科目名

服务器端返回的数据:试卷对象

交卷:客户端发送数据:学号,科目,成绩

服务器端返回的数据:成功与否的信息

退出

2. 服务器端的文件若干试题库文件(corejava.exm)

若干科目的成绩文件

学生信息的文件

3. 服务器对文件的访问方式:试题库文件:Paper getPaper(String 科目名);

学生信息的文件:Student getStudent(int id,String passwd);

成绩文件:addScore(int id,float score,String 科目);