Java网上考试系统,是为了配合Java语言的网上教学而设计的。它是Java课件的一个重要组成部分。
在网络技术逐渐渗入社会生活各个层面的今天,传统的考试方式也面临着变革,而网络考试则是一个很重要的方向。基于Web技术的网络考试系统可以借助于遍布全球的Internet进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。试卷可以根据题库中的内容即时生成,可避免考试前的压题;而且可以采用大量标准化试题,从而使用计算机阅卷,大大提高阅卷效率;还可以直接把成绩送到数据库中,进行统计、排序等操作。所以现在较好的考试方法为网络考试,试题内容放在服务器上,考生通过姓名、准考证号码和口令进行登录,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的。因此,采用网络考试方式将是以后考试发展的趋势。
网络考试系统的实现技术有多种,可以采用传统的客户机/服务器(C/S)型的MIS型架构,即试题内容放在远程的服务器上,在考试机上安装考试应用程序和数据库客户机配置,因此每次考试时要对机器进行安装、配置,这样一来考务工作比较烦琐;而且考试程序放在客户机上,安全性也受到一定影响。另外一种考试系统采用Web 技术实现。Web技术超越了传统的“客户机/服务器”两层结构,采用了三层体系结构:用户界面层/事务层/数据库层。因此Web结构有着更好的安全性。在用户机上不需要安装任何应用程序,应用程序可以安装在事务层所在的计算机上,试题存放在数据库服务器上(事务层和数据库可以是同一台机器)。
本系统作为Java课件(网络版)的一个组成部分,要求实现网络考试系统的各项基本功能。从安全性和易性考虑,选择了Web实现技术。简单的说就是将系统做成一种B/S模式,可以让用户通过浏览器直接访问位于服务器上的试题以及对系统进行远程。
服务器端程序的实现技术也很多,本人选用了当前比较流行的网络编程技术JSP作为主要实现手段(配合Java Servlet、Java Bean、HTML等)。 JSP作为一种Web实现技术,它的效率是很高的。这一点正好符合了考试系统所要求的实时性。JSP自身的安全性,再加上实现模式的特点,完全能够达到考试的保密性要求,了考试的公平性原则。除此之外,作为Java平台的一部分,JSP拥有Java语言“一次编写,各处运行”的特点。又随着越来越多的服务器供应商将JSP支持添加到他们的产品中,这样一来用JSP做成的这套系统可以轻松移植到其它平台来运行。种种优点使得这套系统不但为目前校内的网络教学以至于今后远程教育的实现都打下了良好的基础。所以JSP是实现本系统的最佳技术,它是完全可行的。
本系统由四个子模块组成:数据库及模块、考试子系统模块、成绩管理查询子系统模块、阅卷子系统模块。它们各自的功能如下所述:
这个系统主要是学生使用。考试子系统是本网络考试系统的核心部分,也是设计时的重点。一般说来,网络考试可以在任何时候、任何地方进行。但是为了使学校易于组织和管理,所以本系统对考试时间作了一定的,因此在考试前首先判断当前时间是否为学校的考试时间(或预约的考试时间),由于判断的时间是服务器端的时间,所以跟考试机器的时间无关,即使考生修改所在机器的时间,也无济于事。如果时间符合要求,则显示登录页面进行登录,如信息不正确(包括有些考生试图绕过登录页面,直接进入试卷页面的情况,此时由于没有登录信息,系统也会认为法考生),系统给出提示信息,并重新定位到登录页面;如信息正确,则可以开始不同模式的考试。当考试时间到或考生点击“交卷”按钮时,则系统把考生答案传送至服务器的数据库中保存起来,并在数据库中标记考生是否参加过某门课程考试。(随机考试则可给出成绩;非随机考试等教师批改完试卷后讲成绩保存于数据库。)
为了能让考生及时、方便地了解自己的考试成绩,查询子系统也采用Web方式实现,考生在页面输入自己的信息后,服务器就能把成绩信息传送到考生的机器上。此外,系统还可以对成绩进行排序等管理功能。这个系统学生和教师均可以使用。