基于Java的考试系统设计与实现【附源码+lun文】

摘要
随着现在网络的快速发展,网上管理系统也逐渐快速发展起来,网上管理模式很快融入到了许多用户的眼球之中,随之就产生了“基于BS模式的考试系统”,这样就让的考试信息管理更加方便简单,同时这种在线的考试模式在近几年也受到越来越多的人青睐。
文中重点介绍了系统实现的整个过程,整个系统分为三个部分包括管理员,教师以及考生。整个系统是基于BS模式的,利用eclipse和mysql数据库开发的。系统的完成望能利用先进的计算机技术和网络技术来改变目前的考试信息管理状况,提高考试管理效率,提高考生以及教师的便捷考试,同时也让管理员更容易地对成员进行管理和授予成员相对应的成员。系统完成之后主要是在Windows系统上进行工作,同时需要用到eclipse和mysql数据库。主要的功能大致包括了:管理员在线对考生,教师进行权限等管理、教师阅卷批卷、教师出题以及及时汇总考生成绩、学生在线考试、查看成绩等功能。
关键词:考试系统 java mysql B/S模式
Abstract
With the rapid development of the network, the online management system is also gradually developing rapidly. The online management mode is quickly integrated into the eyes of many users, resulting in the “examination system based on BS mode”, which makes the examination information management more convenient and simple. At the same time, this online examination mode is also favored by more and more people in recent years.
This paper focuses on the whole process of system implementation, the whole system is divided into three parts, including administrators, teachers and examinees. The whole system is based on BS mode, using eclipse and MySQL database development. The completion of the system is expected to use advanced computer technology and network technology to change the current situation of examination information management, improve the efficiency of examination management, improve the convenience of examinees and teachers, and also make it easier for administrators to manage members and grant members corresponding members. After the completion of the system, it mainly works on the windows system, and needs to use eclipse and MySQL database. The main functions include: administrator online management of examinees, authority management of teachers, teacher marking papers, teacher writing questions and collecting examinees’ scores in time, students’ online examination, checking scores and other functions.
Key words:Examination system Java technology mysql database B/S
目录

1.绪论 1
1.1 研究背景 1
1.2 研究现状 1
1.3 系统发展 2
2. 技术与工具平台 3
2.1 基于JSP的数据库连接技术 3
2.2 基于JSP和Servelt技术 3
2.3 java技术 4
2.4 MySql数据库 5
2.5 B/S结构 5
3. 系统分析 6
3.1 可行性分析 6
3.1.1 技术可行性 6
3.1.2 操作可行性 6
3.1.3 经济可行性 6
3.2 系统性能分析 7
3.3 需求分析 7
3.3.1 教师用例图 8
3.3.2 管理员用例图 8
3.3.3 学生用例图 8
3.4 业务流分析 9
3.5 设计思想 10
4. 系统设计 11
4.1 系统概述 11
4.2 系统的功能结构图 11
4.3 数据库概念结构设计 12
4.4 数据库逻辑结构设计 13
5.系统功能实现 17
5.1 登录界面 18
5.2 管理员功能 18
5.2.1 班级管理 19
5.2.2 学生管理 20
5.2.3 教师管理 21
5.2.4 科目管理 22
5.2.5 管理员管理 23
5.2.6 敏感词管理 24
5.3 教师功能 25
5.3.1 添加选课管理 26
5.3.2 导入题目管理 27
5.3.3 自动组卷管理 28
5.3.4 成绩查询统计管理 29
5.3.5 阅卷管理 30
5.3.6 导出成绩管理 31
5.4 学生功能 32
5.4.1 在线练习题目管理 32
5.4.2 错题练习管理 33
5.4.3 在线考试管理 33
5.4.4 成绩查看管理 34
6.系统测试 36
6.1系统测试目的 36
6.2 模块测试 36
6.2 测试结论 40
7.总结 41
参考文献 42
致谢 43

  1. 绪论

1.1 研究背景
随着现代生活水平的不断变化,用户对考试要求也有所提高,在需求提高的发展道路上,管理员要对考试信息管理方面出现的问题进行分析总结,实施对应措施和程序开发方法。基于BS模式的考试系统在互联网快速发展中已经成为了管理考试信息管理主流发展模式。基于BS模式的考试系统的其实已经在社会的发展实践中广为流传了,该系统通过线上的这种新颖的模式可以方便教师在线发布试卷等,还可以通过这些技术实现学生在线考试等操作过程。
当今社会互联网急速发展,计算机管理系统在国内爆炸式的发展起来。这种网络模式对考试信息管理发展产生根深蒂固的的影响,在这种社会环境下如果有一个便捷的基于BS模式的考试系统的出现,那么会改变如今的现状,而且这样的系统也一定会受到大众的青睐。
这种基于BS模式的考试系统的出现让网上教学的这种模式再次出现在大众的眼里,同时它也对于网上考试起着一种支撑的作用,随着信息大时代的潮流,使得基于BS模式的考试系统逐渐越来越广泛地被适用于各个考试系统中。通过该这种BS模式的系统,管理员能够快捷地对考试信息中存在的问题进行适当地处理,同时为了能够提高数据的效率性和准确性,需要不断完善本管理系统功能。实现考试信息管理信息更加规范、自动化以及高效性。
1.2 研究现状
随着现代网络技术的快速发展和我国网络的大量普及,我国的校园教学信息管理得到了新的发展趋势,对于现在的网络信息管理模式也逐渐走向了成熟的道路,所以各个高校也快速推出了网络考试管理系统。由于互联网给人们带来的实时、准确高效的需求,所以对于过去传统的管理发生根本上的改变,它是未来网络管理发展的趋势。
基于BS模式的考试系统它是一个适用于广大人群的系统,特别是学生和教师给他们提供了一种更加便捷的在线考试以及阅卷的方法。而这种系统的开发必须在一定的程度上保证网站的低成本、方便、可靠的优势。而且随着现代科学技术的快速发展和技术的不断成长提高,我们还要保证基于BS模式的考试系统搜索功能的完善与功能强大性。同时还要保证基于BS模式的考试系统前端界面的美观性,让人眼前一亮。

1.3 系统
刘明明,许勇等学者在[1]中基于Java web的在线考试答题系统,一方面是为了能够减轻阅卷人的工作负担,提高工作效率,同时也减少了因考试而消耗不必要的人力和物力。由于现代社会发展脚步不断加快,所以该基于BS模式的考试系统肯定会被人们所接受,并且利用的很充分,从而满足人们的需求,但是,由于现代的人群越来越多,所以基于BS模式的考试系统也是有很多个版本,且之间的竞争力也是非常的大,由于该类网站的开发设计并没有进行信息化平台的综合考虑,主要是依靠网络进行数据的传递和交换,可以说还没有实现服务的一体化,所以在信息管理方面上也是有着一定的缺陷,需要我们不断地去发现并进行修正完善。
由于早期的管理考试信息比较,而且也出现了各类不同的考试系统来管理。没有真正的做到统一管理。为了能够对这个基于BS模式的考试系统进行集中建立处理日常考试中的一些问题,随着社会的快速发展和人们的意识不断提高以及国家的大力支持,也随着国家对这方面的重视现在很多专家和信息技术以及企业都投身于校园服务信息化的管理当中,同时它的发展起到很强推动性。所以我们所面临的问题,基于BS模式的考试系统的信息化建设虽然还是处于分散阶段,但是我们要进一步去管理和完善这个系统。让基于BS模式的考试系统系统发挥出最大作用并实现更高的价值。
本文研究的基于BS模式的考试系统采用了B/S模式、java技术和MySQL数据库,并通过这些技术来实现系统不同用户角色的相应功能。主要功能包括管理员:班级管理、学生管理、教师管理、科目管理、管理员管理、敏感词管理,教师:我的课程、选课管理、题目管理、导入题目、试卷管理、阅卷管理、考试成绩统计,学生:我的科目、我的考试等功能。
2. 技术与工具平台
该系统主要是B/S模式和java技术以及MySql数据库来做系统开发,最后对系统的整体设计、数据库设计、功能设计、页面制作、系统程序定制和调试测试等做出详细的规划。

2.1 基于JSP的数据库连接技术
JSP的数据库连接技术,顾名思义就是将JSP与数据库进行连接需要用到的技术。而这种技术可以把数据持久保存,是一种持久化的机制。目前比较常用的技术是JDBC技术和数据库连接池技术,它们都有各自的优缺点。张超等学者在[2]中指出了JDBC数据库直接访问技术,它需要大致六个步骤就能够完成JDBC数据库的直接访问,分别是加载Sq驱动,使用DriverManager获取数据库的连接然后使用Connecttion来创建一个Statement对象,使用该对象来执行SQL语句,最后操作结果集并收回数据库资源。
2.2 基于JSP和Servelt技术
因为在线考试系统使用了JSP作为系统展示技术,然后使用Servlet作为控制器,再将mysql数据库用于数据存储。在李萍学者[3]中指出JSP和Servlet技术的概述,是为了将前台展示和业务处理分开所以使用了Servlet技术,作为系统的控制部分,与传统的测试相比在线考试系统有一定的优势,并且对于试题的存储有着很大的作用。
2.3 java技术
Java语言[4]是在二十世纪末由Sun公司发布的,而且公开源代码,这一优点吸引了许多世界各地优秀的编程爱好者,也使得他们开发出当时一款又一款经典好玩的小游戏。Java语言是纯面向对象语言之一,从发布初期到现今,可以说有将近20多年的历史,已发展成为人类计算机编程语言发展史上的一个深远影响。
java它的直译过来就是对java进行的服务页,具体它是一种动态网页开发的技术,它也属于开发动态网页当中的一种技术,对于java语言来说它是可以在HTML当中嵌入的,并且通过WEB服务器来做java的编译和执行,最后在把生成的页面返回给客户端。而且对于Java自身而言,它不仅编写简单,广泛性强,同时还非常适用构造基于B/S结构的动态网页。
对于java来说它一般它会执行以下三个阶段。
第一阶段它是响应阶段,因为在页面做出请求以后它就对这件事来做做出接收,最后进行翻译和显示。
第二阶段它就是编译阶段,因为在页面做出请求以后,java文件就会编译成字节码的文件。
第三阶段它就是对这个事件的执行来做出web服务器来做出请求和服务,最后将反应出的结果给客户端并通过界面的效果来做出展示。
对于java来说自从它正式发布以后,现在在大多数的程序编程当中被广泛应用。而且随着现代网络技术的快速发展,在j2ee的应用也得到了很好的发展和应用,对于它的一些扩展和线性的发展成为了一个开发者的应用对象,在java语言当中它可以对于网络实现安全、跨平台等等多种网络安全的功能,所以它在网络的应用和编程中得到了较为广泛的程序应用,而且在程序上的应用也更加方便。
java作为目前世界上主流的网络编程开发环境之一,java将各种Web元素组合在一起从而生成Web应用程序所需要的各种服务,而且java允许Web开发人员对网站开发和允许网站维护与平台无关,可以使开发人员简单快速的搭建网络平台。

2.4 MySql数据库
对于MySQL[5]数据库来说它最初是由瑞典的AB公司来进行开发的。利用Mysql数据库开发大大降低了总体成本,非常适合中小型网站的开发。
开发基于BS模式的考试系统采用MySql 数据库管理工具来存放系统中的的相关数据信息。MySql 是微软的一款比较好的数据库系统,其功能非常强大、数据存储规模也可以做的非常大。目前大多数的程序和网站系统都采用MySql 作为数据库来存储相关的数据信息。
MySql 数据库它有很多的优点,例如它在操作上能够让人通俗易懂、功能强大、信息储存量高等优点。所以被人们广泛应用,对于MySql 数据库来说它一般主要是对数据进行编码和查询,而且在很多的设计当中都应用到了该数据库,在此过程当中我们可以对常规的数据进行查询和组合,所以我们在进行使用MySql 数据库的时候只要对编写一小段的数据就能实现相应的功能。
2.5 B/S结构
BROWSER/SERVER程序架构方式[6]是使用电脑中安装的各种浏览器来进行访问和使用的,相比C/S的程序结构不需要进行程序的安装就可以直接使用。B/S架构的运行方式是在远程的服务器上进行安装,然后在有互联网的电脑上访问和使用。B/S架构的开发方式给用户带来便捷,在任何时间和地点都可以使用开发的程序系统。
在基于B/S的结构中,只要你所在的地区有网络,你就可以通过网络对该系统的网站进行访问和使用,在时间和地域方面没有限制,该B/S结构主要是将程序完整放置到计算机网络的服务器上,并通过计算机互联网提供给用户最优质的服务。在系统当中的B/S结构可以对许多的浏览器来做出信号的请求。一般在系统当中它可以减少用户的工作量,因为只要我们在客户端上安装和配置少量的运行软件他就能减少用户的工作量,这些简单的操作功能它一般是由服务器来完成的。对于B/S框架的不断成熟,并它与多种浏览器的信息结合它能够不断为软件开发带来更多的方便,也不断地增强各个软件功能,这样就可以大大的减少系统开发的成本。B/S结构它主要是应用层层相互独立、展现层来完成相互的联系与关联。
3. 系统分析
本章主要是对该系统的设计需求模块做了一些介绍和分析,并对这些部分应注意的事项做了提醒,以及对系统本身要解决的问题实现、用户与系统功能之间的联系与划分,还有基于BS模式的考试系统的开发与实现中要考虑的问题显示出来,这就让我准确了解系统的具体需求,为本系统的总体设计提供了逻辑思路。然后具体讲述了该基于BS模式的考试系统的设计思想是什么样的,以便于后边程序的编写。最后将系统要用到的数据库、服务器等进行设计与分析,对系统的每个主要模块的具体描述和展示。
3.1 可行性分析
对于基于BS模式的考试系统来说,开发这个系统是能够很好地解决教师管理试卷、学生在线考试等功能,使基于BS模式的考试系统的开发,实现它的最大价值,而且还可以很大程度上解决管理者的负担,所以我认为此次整个系统的的开发是具有价值具有意义的。
3.1.1 技术可行性
在本次开发过程中涉及到的相关技术中,B/S这样的模式结构是当下非常流行的开发结构同时也是非常适用于这种考试系统的结构,在真实开发环境中被大量的应用。而java语言也是当今大家都在使用的广泛程序语言,同时eclipse和mysql数据库也不例外。
3.1.2 操作可行性
对于这种基于BS模式的考试系统的开发登录界面它是我们最常见的一种登录窗口来完成的,用户可以使电脑来进行登录并简单的访问不需要做任何的操作。对于此次的系统开发它主要是基于B/S结构和java技术及mysql数据库来完成,让系统开发更加完美和完善,所以我们开出的系统界面更加人性化,用户使用也更加方便。而且系统在使用过程当中也拥有方便操作、易管理等特点。
3.1.3 经济可行性
经济可行性主要是决定这个系统是否具有价值存在,是否具有开发意义,如果开发的项目不能够节约物品和资源,反而使用的不仅让系统变的人性化,而且让用户更加方便使用,同时也让系统方便操作和管理,因此该系统有一定的开发价值。在开发本项目的初期,节约成本是最基本的,设计和开发都是由本人一人完成的,并且在开发中使我学习到了很多的知识,也开拓了自己的眼界,在通过可行性分析之后,该项目的利大于弊,所以该项目是具有开发意义和价值的。
3.2 系统性能分析
进行系统开发的时候我们主要是考虑了系统在后期上出现的问题是方便维护的,而且在使用过程当中也是可行的,所以我们根据最初的设计确定了整个设计的基本原则。具体原则包括:
简单性:对于整个系统来说它在功能上操作是简单的,而且对每个系统功能的要求也是明确的。
针对性:对于这个系统来说它主要是根据基于BS模式的考试系统的需求来进行开发和设计的,所以它具有很强的针对性。
实用性:从这个系统整体设计来看它主要是针对计算机网络的用户所以有很强的实用性。
一致性:对于系统的整体页面设计和计算机当初的规定都保持了一致性,而且在颜色和元素上都保持了原有的风格。
3.3 需求分析
任务的需求它能决定这个系统开发过程当中一个重要环节,所以我们在系统开发过程所用质量是比较重要的,因为我们在系统应用过程当中不一定那会出现问题,所以我们在进行对系统分析是比较重要的,因为它可以决定这个系统功能和需求。
本课题要求实现一套基于BS模式的考试系统的开发与实现,主要实现功能包括管理员:班级管理、学生管理、教师管理、科目管理、管理员管理、敏感词管理,教师:我的课程、选课管理、题目管理、导入题目、试卷管理、阅卷管理、考试成绩统计,学生:我的科目、我的考试等功能。

3.3.1 教师用例图
出于安全性的考虑,教师只有登录系统才可以正确的操作系统功能,教师用例图如图3-1所示:

图3-1 教师用例图
3.3.2 管理员用例图
管理员拥有着整个系统最大的权限,能够对于考试,考生以及教师进行相对应的管理,同时能够及时的更新整个系统的各项消息。

图3-2 管理员用例图
3.3.3 学生用例图
学生必须填入正确的账号和密码才能够进入系统可以在线考试操作。学生用例图如下图所示:

图3-3学生用例图
3.4 业务流分析
系统流程图它是对系统分析进行业务流程的分析,就拿本基于BS模式的考试系统来看,我们首先是从登录着手,以实际的操作为出发点,保证整个信息的正确输入和输出,最后进行对数据的储存和实际操作步骤来进行绘制出流程图。具体系统流程图如下图3-4所示:

图3-4系统开发流程图
为了保证系统的安全,用户要想进入基于BS模式的考试系统必须进行登录操作,用户登录流程图如图3-5所示

图3-5登录流程图
3.5 设计思想

  1. 对于系统出卷的方式我采用的是授予教师出卷的功能,让教师在线出卷对考生进行对应的科目考核。
  2. 在考试的过程中,我设计了时间计时[7]功能,能够让考生在考试过程中非常清楚地知道自己所剩的考试时间。
  3. 考试完成后,需要经过教师的批阅卷子考生才能够进行查看,同时我也设计了成绩及时反馈功能,教师能够简洁地查看每个考生每次考试成绩的变化以及能够对于成绩进行快速导出方便成绩的管理。
  4. 对于前端界面[8]的设计理念,尽量人性化,简洁,直截了当的反应出考试界面。
  5. 对于整个系统[9]的流畅性,在设计过程中,具体过程尽量做到资源占用少,速度快。
  6. 在面向对象[10]的设计中,对于考生来说是不需要注册的,只需管理员授予权限即可通过用户名和密码进行登录。
  7. 系统设计

4.1 系统概述
总体的软件设计和开发阶段是由上游阶段来完成的,该阶段在后续的开发上做了很好的铺垫。所以在整个设计上我们做出的种种决策来做了软件上的质量决策,从而做好设计的稳定性,同时也保证了软件方便维护。基于BS模式的考试系统工作原理图如图4-1所示:

图4-1 系统工作原理图

4.2 系统的功能结构图
通过对以上的分析,系统可以进行开发拆析,具体可以分为教师、学生和管理员的功能模块。具体教师和学生功能模块就是为用户所设计,管理员功能就是为管理员设计的它可以对信息进行添加、删除、修改和查询等操作。其功能结构图如下图4-2所示:
图4-2系统功能结构图

4.3 数据库概念结构设计
数据库的访问目前比较常用的技术是JDBC技术和数据库连接池技术,而本系统采用的是JDBC数据库直接访问技术。对于这个中间件来说它是位于数据库的当中,它可以通过web服务器来返回给浏览器的用户。这时候用户可以在末端进行对用户的中间件来进行加密和验证,然后对数据库当中的数据进行加密,最后经过数据库来打开,这个程序使用它由三个部分数据库访问模式,本系统的E-R图如下图所示:
1、管理员实体图如图4-3所示:

图4-3管理员信息实体图
2、我的课程信息实体图如图4-4所示:

图4-4我的课程信息实体图
3、题目实体图如图4-5所示:

图4-5题目信息实体图
4、试卷实体图如图4-6所示:

图4-6试卷实体图
4.4数据库逻辑结构设计
数据库的逻辑结构设计其实质就是将实体-关系图转换为关系模型,里面会出现一对一,一对多,多对多的关系模式。转换之后还可以对这些数据模型进行优化来满足用户的要求。
对于每个数据的应用它都是区分开的,当在某一个阶段运行时它就会自动与客户端进行通讯,所以系统就与相应的数据进行连接。当我们选择哪一个桥段的时候它就会对数据库进行创建,这时候就会在对话框内弹出相应的数据源名称,同时输入相应的用户名和登录密码。本系统的数据库表如下所示:
表4-1 t_course课程信息表
字段名 数据类型 主键/允许空 字段含义
ID VARCHAR(100) PRIMARY KEY 序号
name VARCHAR(100) NOT NULL 课程名称
teacherId VARCHAR(100) NOT NULL 教师
examDate VARCHAR(100) NOT NULL 时间

表4-2t_question试卷信息表
字段名 数据类型 主键/允许空 字段含义
ID VARCHAR(31) PRIMARY KEY 编号
answer VARCHAR(31) NOT NULL 答案
courseId VARCHAR(31) NOT NULL 课程
option1 VARCHAR(31) NOT NULL 选项A
option2 VARCHAR(31) NOT NULL 选项B
option3 VARCHAR(31) NOT NULL 选项C
option4 VARCHAR(31) NOT NULL 选项D
quesType VARCHAR(31) NOT NULL 题目类型
score VARCHAR(31) NOT NULL 分值
teacherId VARCHAR(31) NOT NULL 老师
title VARCHAR(31) NOT NULL 标题
userType VARCHAR(31) NOT NULL 用户类型
zqlv VARCHAR(31) NOT NULL 正确答案
表4-3 t_student学生信息表
字段名 数据类型 主键/允许空 字段含义
ID VARCHAR(31) PRIMARY KEY 序号
clazzId VARCHAR(31) NOT NULL 班级
type VARCHAR(31) NOT NULL 角色
uname VARCHAR(31) NOT NULL 姓名
userAddress VARCHAR(31) NOT NULL 地址
userBirth VARCHAR(31) NOT NULL 生日
userEmail VARCHAR(31) NOT NULL 邮箱
userName VARCHAR(31) NOT NULL 账号
userPassword VARCHAR(31) NOT NULL 密码
userPhone VARCHAR(31) NOT NULL 联系电话

对应的班级表,表示管理员能够将这些班级里的成员能够授予他们考试的权利,班级表如下表4-3所示:

表4-3班级表

课程表,表示的是考试能够进行考试的科目,考生可以自主地进行选择自己相对应的考试科目进行考试,课程表如下表4-4所示:
表4-4课程表

试卷成绩表,对应的是每个考生考完后的ID,成绩等关于考生的相关信息,成绩表如下表4-5所示:
表4-5考试成绩表

考题表,对应的是每个教师出的各个题目,是考生在考试过程中需要完成的题目,也是考卷的主要部分,如下表4-6所示:

表4-6考题表

考生表,对应的管理员授予考试权限的,能够在网站上进行在线考试的考生名单,如下表4-7所示:

表4-7考生表

管理员表,拥有最大的权限,能够授予考试考试权限,能够对教师进行信息的管理,如下表4-8所示:
表4-8管理员表

教师表,能够进行阅卷,出卷以及对于学生几次考试的成绩统计,如下表4-9所示:

表4-9教师表

阅卷表,显示的是阅卷的日期等一些信息,考生能够在上面看到自己的阅卷是否阅卷成功,并及时地查看自己的成绩,如下表4-10所示:

表4-10阅卷表

考卷答题表,显示的是每个题考生所做的答案,能够方便教师快速效率地进行阅卷,并将成绩及时反馈给学生,如下表4-11所示:

表4-11考卷答题表

  1. 系统功能实现
    整个系统的大致功能概述如下:
    登陆部分设计功能:学生用户只能通过管理员添加的学生用户才能够在系统中进行登录(用户的账户名和密码都是管理员分配的),在各个权限不同的用户进行登录时,系统会自动识别,必须输入正确的用户名和密码才能够进入系统,系统会根据权限的不同进入相应的用户界面进行各自的操作。
    管理员用户功能设计:对于不同用户的管理,授予新用户不同的权限以及对于敏感词语的管理。

教师用户功能设计:试题库的管理(增删查改)和试卷的生成,查看考试成绩,系统能够呈现出每次该学生的成绩曲线变化以及能够方便地将阅卷后的学生成绩导出至excel表格。

学生用户功能设计:在规定时间之内参加考试,考试结束交卷,并可以查询考试成绩以及对于自己的错题练习和在线练习这两种考试类型是不需要时间限制的。
5.1登录界面
管理员要按要求进行登录,需要输入正确的账号、密码和验证码才能登录到系统,需要我们再次输入确认以后才能进行所有功能的操作。所以我们登陆系统才能对自己所对应的功能进行操作,登录界面展示以及部分逻辑代码如图5-1所示

图5-1 登录界面

图5-1 登录界面代码

5.2管理员功能
管理员通过用户和密码登录系统,能够对于考试,考生以及教师进行相对应的管理,同时能够及时的更新整个系统的各项消息。具体程序运行效果图以及部分逻辑代码如下图5-2所示:

图5-2管理员功能页面图

图5-2管理员功能页面代码
5.2.1班级管理
管理员能够对于每个不同的班级信息进行查看,添加,管理等操作。程序运行效果图以及部分逻辑代码如图5-3所示:

图5-3班级管理页面图
表5.1

图5-3班级管理页面代码

5.2.2学生管理
管理员登录系统可以添加、删除、修改学生信息等操作。程序运行效果图如图以及部分逻辑代码5-4所示:

图5-4学生信息管理页面图
表5.2

图5-4学生信息管理页面代码

5.2.3教师管理
管理员登录系统后,可以对每个教师信息进行查看,添加,管理等操作。具体运行效果如下图以及部分逻辑代码5-5所示:

图5-5教师管理页面图
表5.3

图5-5教师管理页面代码

5.2.4科目管理
管理员对每个科目信息进行上课班级的设置、修改以及查看等操作。具体程序运行效果如下图以及部分逻辑代码5-6所示:

图5-6科目管理页面图
表5.4

图5-6科目管理页面代码

5.2.5管理员管理
管理员对管理员信息进行添加、查看以及删除等操作。具体程序运行效果如下图以及部分逻辑代码5-7所示:

图5-7管理员管理页面图
表5.5

图5-7管理员管理页面代码
5.2.6敏感词管理
管理员对与某些特殊的敏感词信息进行删除、屏蔽以及修改等操作。具体程序运行效果如下图以及部分逻辑代码5-8所示:

图5-8敏感词管理页面图
表5.6

图5-8敏感词管理页面代码

5.3教师功能
教师进入系统可以查看我的课程、选课管理、题目管理、导入题目、试卷管理、阅卷管理、考试成绩统计等操作。程序运行效果图如图以及部分逻辑代码5-9所示:

图5-9教师管理功能页面图
表5.7

图5-9教师管理功能代码

5.3.1添加选课管理
教师进入系统可以在线进行查看我的科目等以及添加选课管理操作。程序运行效果图如图以及部分逻辑代码5-10所示:

图5-10教师添加选课功能页面图

图5-10教师添加选课功能页面代码

5.3.2导入题目管理
教师进入系统可以对于出题目进行简便操作直接导入excel中设置好的题目。程序运行效果图如图5-11以及部分逻辑代码所示:

图5-11教师导入题目功能页面图

图5-11教师导入题目功能页面代码

5.3.3自动组卷管理
教师进入系统可以对于如何出哪种类型的题目可以直接设置好然后系统将会自动组成试卷以便于学生进行考试。程序运行效果图如图5-12以及部分逻辑代码所示:

图5-12教师自动组卷功能页面图
表5.8

图5-12教师自动组卷功能代码

5.3.4成绩查询管理
教师进入系统可以在线进行对于自己批阅的试卷成绩查询。程序运行效果图如图5-13以及部分逻辑代码所示:

图5-13教师成绩查询功能页面图
表5.9

图5-13教师成绩查询功能代码

5.3.5阅卷管理
教师进入系统可以在线对已经考试完成并提交试卷的学生进行批卷功能。程序运行效果图如图5-14以及部分逻辑代码所示:

图5-14教师阅卷功能页面图
表5.10

图5-14教师阅卷功能代码

5.3.6导出成绩管理
教师进入系统可以对于阅卷后的成绩进行导出表格功能,这样既方便也能快速效率地进行其他操作。程序运行效果图如图5-15以及部分逻辑代码所示:

图5-15教师导出试卷页面图

图5-15教师导出试卷页面代码

5.4学生功能
5.4.1学生在线练习管理

学生通过输入正确的账号和密码进入相应的用户系统进行在线练习以及查看我的科目等操作。程序运行效果图如图以及部分逻辑代码5-16所示:

图5-16学生在线练习功能页面图
表5.11

图5-16学生在线练习功能页面代码

5.4.2学生错题练习管理
学生进入系统可以在线进行错题练习以便于温故而知新。程序运行效果图如图以及部分逻辑代码5-17所示:

图5-17学生错题练习功能页面图

图5-17学生错题练习功能页面代码

5.4.3学生在线考试管理
学生进入系统可以在线进行在线考试。程序运行效果图如图以及部分逻辑代码5-18所示:

图5-18学生在线考试页面图

图5-18学生在线考试页面代码

5.4.4学生查看成绩管理
学生进入系统可以在线查看成绩。程序运行效果图如图5-19以及部分逻辑代码所示:

图5-19学生在线成绩查看页面图
表5.12

图5-19学生在线成绩查看页面代码
6.系统测试
6.1系统测试目的
为保证该在线考试系统的设计与开发的质量和可靠性。系统测试是在开发过程中必不可少的一个重要步骤,目的在于找出本系统中在开发与设计的过程中途可能出现的一些缺陷和错误。同时为了验证该系统是否满足用户的需求。
6.2 模块测试
整个大致的系统测试流程图如下图所示:

图6-1 测试与纠错信息流程

对考生,教师,管理员用户的登录进行测试如下表所示:
表6-1 用户登录功能模块
用例描述 测试步骤 预期结果 实际结果 测试是否通过
能否正常输入账号
点击账号输入框,随意输入字符 字符输入正常 字符输入正常 是
能否正常输入密码 点击密码输入框,随意输入字符,不能超过指定位数 字符输入正常 字符输入正常 是
用户登录 文本框输入正确信息后,点击注册账号 注册成功,跳转到登录弹窗 注册成功,跳转到登录弹窗 是
用户登录 文本框输入错误信息后,点击注册账号 注册失败,回显错误信息 注册失败,回显错误信息 是

管理员进行权限分配测试如下表所示:
表6-2权限分配功能
用例描述 测试步骤 预期结果 实际结果 测试是否通过
能否正常弹出弹窗
点击分配权限按钮 弹出分配权限弹窗 弹出分配权限弹窗 是
获取到可以分配的权限信息 点击分配权限按钮,弹出分配权限弹窗 正确获取到数据 正确获取到数据 是
能否正常分配权限 点击分配权限按钮,弹出分配角色弹窗,点击确认 分配权限权限成功,弹出提示信息 分配权限成功,弹出提示信息 是
能否正常分配权限 点击分配角色按钮,弹出分配角色弹窗,点击确认 分配权限失败,弹出提示信息 分配权限失败,弹出提示信息 是

管理员进行敏感词功能测试如下表所示:
表6-3敏感词删除功能
用例描述 测试步骤 预期结果 实际结果 测试是否通过
点击删除按钮,弹出删除弹窗
点击删除按钮,弹出删除弹窗
弹出删除弹窗,并且获取到删除原因 弹出删除弹窗,并且获取到删除原因 是
点击删除 选择删除原因之后,点击举报按钮 删除成功,弹出提示信息 删除成功,弹出提示信息 是
点击删除 选择删除原因之后,点击举报按钮 删除失败,弹出提示信息 删除失败,弹出提示信息 是

教师在线出卷测试如下表所示:
表6-4试卷上传功能
用例描述 测试步骤 预期结果 实际结果 测试是否通过
能否正常上传试卷
点击试卷上传按钮,选择要上传的试卷
在页面中显示要上传的文件信息,以及文件上传进度信息 在页面中显示要上传的文件信息,以及文件上传进度信息 是
上传 点击上传按钮,再点击开始上传 上传文件成功,提示上传成功信息 上传文件成功,提示上传成功信息 是
上传 点击上传按钮,再点击开始上传 上传文件失败,提示上传失败信息 上传文件失败,提示上传失败信息 是
学生在线考试功能测试如下表所示:
表6-5在线考试功能
用例描述 测试步骤 预期结果 实际结果 测试是否通过
能否正常弹出考试确认弹窗
点击在线考试按钮,弹出考试页面 弹出考试页面 弹出考试页面 是
提交试卷 点击提交试卷按钮 提交试卷成功 提交试卷成功 是
提交试卷 点击提交试卷按钮 提交试卷失败,提示信息 提交试卷失败,提示信息 是
管理员分配权限功能测试如下表所示:
表6-6分配权限功能
用例描述 测试步骤 预期结果 实际结果 测试是否通过
能否正常弹出弹窗
点击分配权限按钮 弹出分配权限弹窗 弹出分配权限弹窗 是
获取到可以分配的权限信息 点击分配权限按钮,弹出分配权限弹窗 正确获取到数据 正确获取到数据 是
能否正常分配权限 点击分配权限按钮,弹出分配角色弹窗,点击确认 分配权限权限成功,弹出提示信息 分配权限成功,弹出提示信息 是
能否正常分配权限 点击分配角色按钮,弹出分配角色弹窗,点击确认 分配权限失败,弹出提示信息 分配权限失败,弹出提示信息 是
教师导出表格功能测试如下表所示:
表6-7导出表格功能

用例描述 测试步骤 预期结果 实际结果 测试是否通过
能否正常导出表格
点击导出表格按钮 正常获取到显示考生成绩的表格 正常获取到显示考生成绩的表格 是
能否正常弹出导出表格窗口 点击导出表格按钮 正常获取到确认导出表格窗口 正常获取到确认导出表格窗口 是
学生在线查看成绩功能测试如下表所示:
表6-8查看成绩功能

用例描述 测试步骤 预期结果 实际结果 测试是否通过
能否正常获取成绩
点击查看成绩按钮,进入查看成绩的页面 正常查看到自己成绩信息 正常查看到自己成绩信息 是
能否正常弹出查看成绩窗口 点击查看成绩按钮 正常获取到确认查看成绩窗口 正常获取到确认导出表格窗口 是
教师在线阅卷功能测试如下表所示:
表6-9在线阅卷功能
用例描述 测试步骤 预期结果 实际结果 测试是否通过
能否正常弹出阅卷确认弹窗
点击阅卷按钮,弹出删除确认弹窗
弹出阅卷确认弹窗 弹出阅卷确认弹窗 是
阅卷确认 点击确认阅卷确认 阅卷确认成功 阅卷确认成功 是
阅卷确认 点击确认阅卷确认 阅卷确认失败,提示信息 阅卷确认失败,提示信息 是
管理员增加,删除用户功能测试如下表所示:
表6-10管理员增加,删除用户功能
用例描述 测试步骤 预期结果 实际结果 测试是否通过
能否正常获取父级分类名
点击新增用户按钮,弹出添加用户弹窗 正常获取数据 正常获取数据 是
能否正常输入用户名 点击新增用户名输入框,随意输入字符,在指定位数范围之内 字符输入正常 字符输入正常 是
用户新增 文本框输入正确信息后,点击确认按钮 新增用户 新增用户 是
用户新增 文本框输入正确信息后,点击确认按钮 新增用户 新增失败,回显错误信息 是
能否正常弹出删除确认弹窗
点击删除用户按钮,弹出删除确认弹窗
弹出删除用户确认弹窗 弹出删除用户确认弹窗 是
用户删除 点击确认用户按钮 用户删除成功 用户删除成功 是
用户删除 点击确认用户按钮 用户删除失败,提示信息 用户删除失败,提示信息 是
管理员班级管理测试如下表所示:
表6-11管理员班级管理测试功能
用例描述 测试步骤 预期结果 实际结果 测试是否通过
点击添加班级按钮 点击班级的添加按钮 提示添加成功或者取消添加成功 提示添加成功或者取消添加成功 是
点击删除班级按钮
点击班级的删除按钮 提示删除成功或者取消删除成功 提示删除成功或者取消删除成功 是
点击修改班级按钮
点击班级的修改按钮 提示修改成功或者取消修改成功 提示修改成功或者取消修改成功 是
6.3测试结论
经过以上的测试结果分析,本项目基于java web的在线考试系统基本能够满足考试管理的一些要求。系统中的用户管理,教师阅卷批卷,在线练习,在线考试,错题复习,导出成绩等基本功能齐全,而且界面简洁操作方便。同时系统的整个运行性能良好,应该能满足大多数群众的需求。同时我自己也相信能够收到广泛群众的青睐。
7.总结

经过这一段时间的项目开发过程中,使我学到了很多新的东西,同时也巩固了之前的基础知识,但是在开发过程中,我也意识到了自己在知识上的一些不足之处。在经过一边开发一边学习的过程中,我学习到了很多之前从未接触过的新知识,之前我擅长的领域都是偏向于前台开发为主,而忽略了后台开发的学习,当需要个人单独完成整个项目时,则必须再花时间学习后端的知识内容,也了解的后端开发的一些基本处理逻辑的开发方式,还有一些比较流行的开发组件。
其次是后台的Java内容,经过此次项目,收获最大的就是对于Java知识的掌握更加巩固,我对于Java的一些基础知识有了更进一步的了解,以及一些进阶知识的掌握。就比如在使用eclpise工具开发时,遇到了如何将mysql数据库系统联系起来的问题,最终通过对于自己网上翻阅资料了解到对于数据库的连接目前比较常用的技术是JDBC技术和数据库连接池技术,而我使用的就是JDBC数据库直接访问技术,使用这种技术的好处在于实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口,还扩展了java的功能。
在自己摸索的过程中,我认为这种基于java web的在线考试系统有着非常好的发展前景,经过测试运行,系统各项功能都十分完善,界面漂亮,使用方便,操作容易,在技术理论上已经成熟。同时经过这次的毕业设计也相信对于今后自己在工作还是学习中对于系统的设计与开发有了更为深刻的感触。
参考文献

[1] 刘明明,许勇.基于Web的在线考试系统分析与评价[J].管理观察,2009(5): 235
[2] 张超. 基于 JSP 的数据库连接技术浅析[J]. 福建电脑, 2013, 28(12): 80-81.
[3] 李萍,基于JSP+Servlet技术的在线考试系统的设计与实现[J],新疆师范大学计算机科学技术院,2016,(05)
[4] 孙鑫.Struts 2深入详解(Java技术大系)[M].北京:电子工业出版社,2017:5-14
[5] 郑阿奇.SQL实用教程[M].北京:电子工业出版社,2018:26-42
[6] 潘国荣,基于JSP+JavaBean+Servlet实现模式的增删改模块的设计与实现[J].信息通信,2017,(08):101-103.
[7] 阿斯利森,舒塔,金灵等译.Ajax基础教程[M].北京:人民邮电出版社,2017:15-26
[8] 葛建霞,《JSP动态网页设计》课程中项目教学法的应用研究[J].宿州教育学院学报,2017,20(04):160-161.
[9] 布朗,戴维斯,斯坦利克,马召等译.Struts 2实战[M].北京:人民邮电出版社,2018:85-136
[10] 王行言.Java语言与面向对象程序设计[M].北京:清华大学出版社,2017:36-85

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

广西千灵通网络科技有限公司

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值