大学毕业设计基于ssh的计算机基础知识在线考试系统.docx

上传人:b****8 文档编号:11289482 上传时间:2023-02-26 格式:DOCX 页数:48 大小:1.90MB
下载 相关 举报
大学毕业设计基于ssh的计算机基础知识在线考试系统.docx_第1页
第1页 / 共48页
大学毕业设计基于ssh的计算机基础知识在线考试系统.docx_第2页
第2页 / 共48页
大学毕业设计基于ssh的计算机基础知识在线考试系统.docx_第3页
第3页 / 共48页
大学毕业设计基于ssh的计算机基础知识在线考试系统.docx_第4页
第4页 / 共48页
大学毕业设计基于ssh的计算机基础知识在线考试系统.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

大学毕业设计基于ssh的计算机基础知识在线考试系统.docx

《大学毕业设计基于ssh的计算机基础知识在线考试系统.docx》由会员分享,可在线阅读,更多相关《大学毕业设计基于ssh的计算机基础知识在线考试系统.docx(48页珍藏版)》请在冰豆网上搜索。

大学毕业设计基于ssh的计算机基础知识在线考试系统.docx

大学毕业设计基于ssh的计算机基础知识在线考试系统

2015届普通本科毕业论文(设计)

存档编号:

毕业论文(设计)

题目:

基于SSH的计算机基础知识在线考试系统

专业

软件工程

院系

信息工程学院

年级

2011级

学号

11150038

姓名

李艳平

指导教师

关培超

职称

讲师

湖北经济学院教务处制

摘要

随着科学技术的高速发展,网络技术已经逐渐深入到我们的日常生活中。

同时它也带来了教育方式的一次变革,而在线考试则是一个很重要的方面。

基于网络技术的在线考试系统则可以借助于遍布全球的Internet进行。

在线考试系统(OnlineTest)是基于JavaEE和Struts2+Hibernate+Spring框架,采用Eclipse开发工具+MySQL数据库+Tomcat服务器开发的一个基于Web的在线考试平台,适合各行各业的网上考试、作业、练习等。

它采用web方式,无需安装客户端,只需一部能上网的工具,即可实现无纸化考试。

考试系统包括登陆注册、在线考试、试卷管理、试题管理、成绩管理、考生管理、分数统计以及成绩查询等功能。

本系统旨在实现考试的规范化、信息化管理,提升考试效率,增强考试的公平性,使考务管理突破时空控制,使学校管理者、教师和学生无论在何时何地都可通过网络进行考试,使教学朝着信息化、网络化、现代化的目标前进。

关键词:

在线考试;Struts2;Hibernate;Spring;JSON;AJAX;Bootstrap

ABSTRACT

Withtherapiddevelopmentofscienceandtechnology,thenetworktechnologyhasgraduallypenetratedintoourdailylife.Atthesametime,italsobringsarevolutioninthewayofeducation,whiletheonlineexamisaveryimportantaspect.TheonlineexaminationsystembasedonnetworktechnologycanaroundtheworldwiththehelpoftheInternet.

TheOnlineTestSystemisbasedonJavaEEandStruts2,HibernateandSpringframework.It’sanonlineexaminationplatformbasedonWebandusingEclipsedevelopmenttools,MySQLdatabaseandTomcatserverdevelopment,andsuitableforallonlineexaminationpracticeetc.ItadoptsWebmode,noneedtoinstalltheclient,justainternettool,youcanachievethepaperlessexamination.Thetestsystemincludesonlineregistration,signinsystem,onlineexamination,testpapermanagement,testquestionsmanagement,examinationresultsmanagement,candidatemanagementandotherfunctions.

Thepurposeofthissystemistorealizeinformationmanagementandstandardizedexamination,andtoenhancetheefficiencyoftheexamination,enhancethefairnessoftheexam,andbreakthelimitationoftimeandspace.Inthisway,youcantaketheexaminationthroughthenetworkatanytime,andtheteachingcantowardsthetargetofinformatization,network,modernization.

Keywords:

onlineexamination;Struts2;Hibernate;Spring;JSON;Ajax;Bootstrap

绪论

系统开发背景

传统的考试中,要求教师在设计完试卷以后还要打印试卷,安排考试,现场监考,接着收集试卷,给试卷评分,由于参考学生太多,考试类型复杂,这是一个漫长而且辛苦的过程,而且由于人工阅卷,使考试具有主观性,难免缺乏公正。

而在线考试系统,则可以很好的解决这个问题。

随着计算机技术、Internet技术在教育领域应用的普及,采用现代信息技术的在线考试系统则表现出来很大的优势。

在线考试系统通过应用网络技术,来实现考试过程的无纸化,使相关部门对考试过程的管理不受时间和空间的约束,不仅提高了考务管理的工作效率,还能节省资源,无论在任何地地点任何时间,只需一台能上网的设备,你就可以参加考试。

在线考试系统使教学工作能够朝着信息化、网络化、现代化的目标迈进,同时也成为教育技术发展与研究的方向。

国内外研究现状及分析

世界上所有国家对教育事业的发展都给与了很大的关注,都期望在未来的信息社会中让教育处在优势地位,走在社会发展的前沿,因此大多数国家都把信息技术应用于教育,作为国家发展的重要推动力。

在国外,美国心里协会在1986年出版了关于如何开发、使用计算机化考试以及解释考分的指南,成为了考试和软件开发人员的事实标准。

目前,国外很多的大型检测出版机构、地区教育主管部门和专业资格认证机构都以某种测量理论为指导建立题库、设计考试系统,并进行各项相关研究。

在我国,在线考试系统和题库的理论研究和实践应用虽然起步较晚,但发展比较快速,研究和开发活动也比较活跃。

北京师范大学、华北师范大学等高等院校都有教师在进行教育测量理论应用于题库建设方面的研究。

上海交通大学、清华大学等高校,也有教师在组织力量致力于实用考试系统的研究和开发工作。

其中使用专用在线考试系统影响较大的考试有:

1994年开始,国家教务组织的全国计算机等级考试;1996年开始,教育部考试中心举办的全国计算机应用技术证书考试;微软授权培训中心组织的认证考试等。

系统开发意义

在传统的教学检验方式中,要进行一次考试,至少需要经过教师出题、打印试卷、学生考试、教师阅卷等几步,这是一个繁琐的过程,需要投入大量人力、物力及时间。

显然随着考试类型的不断增加和考试要求的不断提高,教师的工作量也越来越大,可以说传统的考试方法已经不能适用于现代考试的需要。

那么,解决这些诸多难题的一种方式,就是利用Internet无国界的特点,在互联网上在线考试。

在线考试系统可以减轻教师的工作负担、提高其工作效率,也减少了因考试而消耗的不必要的人力和物力,同时提高了考试的质量,从而使考试更趋于公正、客观,更加能激发学生的学习兴趣。

本文组织结构

本首先讲述了在线考试系统开发的背景和现状,接着在第二章分析了系统可行性、系统目标以及系统所用到的技术等。

第三章首先从软件工程的角度分析了系统各方面的需求,然后通过系统功能模块图描述了系统的各个模块及其功能,并给出了系统流程图,使整个系统结构一目了然,最后介绍了系统的数据结构和数据库设计。

在第四章则讲述了系统的详细设计与实现,通过文字和截图的形式分析了各个模块的功能及操作流程。

第五章对系统中一些关键代码和比较重要的部分及关键点进行了讲解和分析,并对填空题自动评分算法做了详细介绍且给出了代码的实现。

最后对项目进行了总结,并介绍在此次项目中获得的经验以及自己的不足之处。

系统概述

可行性研究

1.经济可行性

大部分学校为了能够及时的掌握学生的学习情况,都会定期的组织考试,对传统的考试模式而言,这无疑需要消耗大量的人力物力。

而利用基于网络的在线考试系统,不仅可以节省人力资源,减少因考试而花费的成本,同时,在线考试系统因为能够快速的展开考试和评分,使考试更具客观性和公正性。

2.技术可行性

开发一个网络在线考试系统,涉及的最核心的技术问题就是如何实现在不刷新页面的情况下实时显示考试时间及剩余时间,并做到到达考试结束时间时自动提交试卷的功能。

如果在Ajax技术出现之前,要实现这些功能会比较麻烦,但现在通过Ajax技术可以轻松实现这些功能,这为在线考试系统的开发提供了技术保障。

系统目标

根据前面所进行的需求分析及用户的需求可知,成长在线考试网属于中小型的软件,在系统实施后,应达到以下目标:

1.突破空间限制。

考生可以通过网络在任何地方进入在线考试系统参加考试,而无须到达特定的地点进行考试。

2.系统界面要大方整洁,操作简单。

3.系统为考生提供剩余考试时间提醒功能,以便考生能及时掌握考试情况。

4.提供超时自动交卷的功能。

当到达考试规定的结束时间时,如果考生没有按时提交试卷,系统将会自动交卷,从而确保考试能够公平的进行。

5.系统自动阅卷,保证成绩真实准确

6.考生可以查询考试成绩。

7.系统运行稳定、安全可靠。

开发环境

在开发在线考试系统时,需具备下面的软件环境。

操作系统:

Windows8

数据库:

MySQL5.0

Web服务器:

Tomcat6.0

开发工具:

eclipse3.6

开发语言:

Java

相关理论和技术

1.SSH框架

首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活、易于扩展的多层Web应用程序。

Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持。

Spring一方面作为一个轻量级的IoC容器,负责查找、定位、创建和管理对象及对象之间的依赖关系,另一方面能使Struts和Hibernate更好地工作。

采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。

这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。

而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。

但是在一个项目中,通常会有很多个组件,如果这些组件采用XML的bean定义来配置,显然会增加配置文件的体积,查找以及维护起来也不太方便。

个人也不喜欢配置那么多的XML文件。

所系本系统采用java的注解实现ssh框架,注解相当于一种标记加了注解就等于打上了某种标记,没加,则等于没有某种标记,以后,javac编译器,开发工具包和其他程序可以用反射来了解你的类以及各种元素上有何种标记,看你有什么标记,就去干相应的事,标记可以加载包,类,字段,方法,方法的参数以及局部变量上。

关于全注解的实现方式,我将会在后面的系统实现部分详细介绍。

2.MySQL数据库

MySQL被广泛的应用在Internet上的中小型网站中。

由于其体积小、速度快、总体花费成本低,尤其是开放源码这一特性,许多中小型的网站为了降低总体成本而选择了MySQL作为网站数据库。

而且MySQL具有超强的稳定性和强大的查询功能,从而使得查询变得方便和快捷。

3.Bootstrap框架

Bootstrap,来自Twitter,是目前最受欢迎的前端框架。

Bootstrap是基于HTML、CSS、JAVASCRIPT的,它简洁灵活,使得Web开发更加快捷,它在jQuery的基础上进行了更为个性化和人性化的完善,形成一套自己独有的网站风格,并兼容大部分jQuery插件。

Bootstrap中包含了丰富的Web组件,根据这些组件,可以快速的搭建一个漂亮、功能完备的网站。

4.Ajax技术

Ajax,即异步的JavaScript和XML,它不是新的编程语言,而是一种使用现有标准的新方法。

传统的Web应用交互由用户触发一个HTTP请求到服务器,服务器对其进行处理后再返回一个新的HTHL页到客户端,每当服务器处理客户端提交的请求时,客户都只能空闲等待,哪怕只是一次很小的交互,都要返回一个完整的HTML页,而用户每次都要浪费时间和带宽去重新读取整个页面,这导致用户界面的响应比本地应用慢得多。

AJAX使用异步方式与服务器通信,不需要打断用户的操作,具有更加迅速的响应能力。

优化了Browser和Server之间的沟通,减少不必要的数据传输、时间及降低网络上数据流量。

通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新。

这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

5.JSON

JSON(JavaScriptObjectNotation),是一种轻量级的数据交换格式。

它基于JavaScript的一个子集。

JSON采用完全独立于语言的文本格式,数据格式比较简单,易于读写,格式都是压缩的,占用带宽小。

因为JSON格式能够直接为服务器端代码使用,大大简化了服务器端和客户端的代码开发量,但是完成的任务不变,且易于维护。

这些特性使JSON成为理想的数据交换语言。

系统分析与概要设计

需求分析

伴随着社会经济的快速发展与前进,人们对教育的发展越来越重视。

考试是教育中的一个重要环节,近年来考试类型的不断增加及考试需求不断提高,传统的考试方式要求教师打印考卷、监考、批卷,使教师的工作量越来越大,并且这些环节由于全部需要人工完成,非常容易出错。

由于以上几个原因,现在很多学校以及考试机构正在大力建设在线考试系统,以此来减少考务管理成本和降低人力及物力的投入,与此同时也可以为考生提供更加全面、更加灵活的服务。

考生希望对自己的学习情况进行客观、科学的评价;教学人员则期望现有的考试模式能够得到有效的改进,从而能够提升考试效率。

为了满足考生和教务人员的需求,在线考试系统需要实现题库管理、在线生成试卷并管理、考生登录注册、考生信息管理、在线答题、在线提交试卷、自动评分、成绩查询等功能,以满足各方面的需要。

1.考生:

可以在线注册,登录系统,若忘记登陆密码可根据注册时填写的提示问题及答案召回登录密码;登陆系统后可修改密码及个人基本信息、选择试卷并在线考试、查询成绩个人成绩;考试结束后可退出系统。

图3-1考生用例图

2.管理员:

登陆系统后可对管理员、考生等信息进行管理;添加考试题目并生成试卷;对考生成绩按条件进行查询和管理。

图3-2管理员用例图

3.系统:

在考试时为考生提供考试时间倒计时功能,提醒考生剩余考试时间;考试时间到达时自动提交试卷;提交试卷后自动阅卷并即时显示考试成绩。

图3-3系统用例图

系统功能结构

根据在线考试系统的特点,可以将其分为前台和后台两个部分来进行设计。

前台主要用于考生注册和登录系统、在线考试、查询成绩及修改个人资料等;后台主要用于管理员对考生信息、试卷信息、考题信息和考生成绩信息等进行管理。

1.在线考试系统的前台功能结构图如图3-4所示。

图3-4前台功能结构图

2.在线考试系统的后台功能结构图如图3-5所示。

图3-5后台功能结构图

系统流程图

1.考生在进入系统进行操作之前需先登录系统,进入前台首页之后通过导航栏上面的链接可以进行相关操作。

考生模块业务流程图如图3-6所示。

图3-6考生模块流程图

2.管理员登陆系统后,进入后台管理首页,通过导航栏链接进行后台管理工作。

管理员模块业务流程图如图3-7所示。

图3-7管理员模块流程图

数据库设计

1.数据库分析

数据库是一个应用系统的核心,所以数据库设计的好坏对一个系统的执行效率以及数据的有效性和一致性有着直接且重要的影响。

设计数据库之前应充分了解用户的需求,需求分析是设计数据库的起点,需求分析的结果是否能够准确无误的反映用户的实际需求,将直接影响到后面各个阶段的设计。

数据库需求分析的目的就是要了解在一个系统中,用户需要查询、添加、修改和删除哪些数据,通过对基本数据、数据结构以及数据处理的流程的收集与整理,组成一份详细的数据字典,从而为后面的具体设计奠定基础。

根据前面所进行的需求分析及用户的需求可知,在线考试系统属于中小型的软件。

而MySQL具有小巧、功能齐全、查询迅捷等优点,可并可免费使用,对于一般中小型,甚至大型应用都能够胜任。

综上所述,本系统采用的是MySQL数据库。

2.数据库概念设计

数据模型是是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。

描述了数据结构、数据操作及数据约束。

   

E-R模型是对现实世界的一种抽象。

它的主要成分是实体、联系和属性。

使用这三种成分,我们可以建立许多应用环境的E-R模型。

根据以上各节对系统所做的需求分析和系统设计,现规划处本系统中使用的数据库实体分别为考生档案实体、管理员档案实体、试卷信息实体、考试题目实体(包括单选题、多选题、判断题、填空题)和考生成绩实体。

下面将介绍几个关键实体的E-R图。

1)考生信息实体

考生档案实体包括编号、考生姓名、密码、性别、提示问题、问题答案、身份证号等属性。

其实体E-R图如图3-8所示。

图3-8考生信息实体ER图

2)试卷信息实体

试卷实体包括编号、试卷标题、单选题个数、单选题每题分值、判断题个数、判断题每题分值、多选题个数、判断题每题分值、填空题个数、填空题每空分值、添加日期、考试所需时间等属性。

其实体E-R图如图3-9所示。

图3-9试卷信息实体ER图

3)单选题实体

单选题实体包括编号、题干、正确答案、选项A、选项B、选项C、所属试卷等属性。

其实体E-R图如图3-10所示。

图3-10单选题信息实体ER图

4)判断题实体

判断题实体包括编号、题干、正确答案、所属试卷等属性。

其实体E-R图如图3-11所示。

图3-11判断题信息实体ER图

5)多选题实体

多选题实体包括编号、题干、正确答案、所属试卷、选项个数、选项A、选项B、选项C、选项D、选项E、选项F、选项G等属性。

其实体E-R图如图3-12所示。

图3-12多选题信息实体ER图

6)填空题实体

填空题实体包括编号、题干、正确答案、空白个数、所属试卷等属性。

其实体E-R图如图3-13所示。

图3-13填空题信息实体ER图

7)考生成绩实体

考生成绩实体包括编号、考生编号、试卷编号、成绩、考试时间等属性。

其实体E-R图如下图所示。

图3-14成绩表信息实体ER图

3.数据库逻辑结构

根据上一节的数据库概念设计,可以创建与之对应的数据表。

本系统包含8张表,下面分别介绍这些表的结构。

1)tb_admin(管理员信息表)

管理员信息表用来存放所有管理员的登录信息,该表的结构如下表所示。

列名

数据类型

约束

描述

id

int

primarykey

ID号(自动编号)

username

varchar(30)

notnull

用户名

password

varchar(30)

notnull

密码

2)tb_candidate(考生信息表)

考生信息表用来保存所有考生信息,该表的结构如下表所示。

列名

数据类型

约束

描述

id

int

primarykey

ID号(自动编号)

name

varchar(30)

notnull

姓名

password

varchar(30)

notnull

密码

sex

int

notnull

性别

cardNo

varchar(18)

notnull

身份证号

question

varchar(100)

notnull

提示问题

answer

varchar(100)

notnull

问题答案

3)tb_paper(试卷信息表)

试卷信息表用来保存套题信息,该表的结构如下表所示。

列名

数据类型

约束

描述

id

int

primarykey

ID号(自动编号)

name

varchar(100)

notnull

试卷标题

singleNum

int

允许空值

单选题数量

singlePoint

int

允许空值

单选题每题分值

pdNum

int

允许空值

判断题数量

pdPoint

int

允许空值

判断题每题分值

multipleNum

int

允许空值

多选题数量

multiplePoint

int

允许空值

多选题每题分值

addDate

datetime

允许空值

添加日期

needTime

int

允许空值

考试所需时间

4)tb_single(单选题信息表)

单选题信息表用来存放单选题信息,该表的结构如下表所示。

列名

数据类型

约束

描述

id

int

primarykey

ID号(自动编号)

subject

varchar(200)

notnull

题干

paperId

int

notnull

所属试卷编号

optionA

varchar(100)

notnull

选项A

optionB

varchar(100)

notnull

选项B

optionC

varchar(100)

notnull

选项C

optionD

varchar(100)

notnull

选项D

answer

varchar

(2)

notnull

正确答案

5)tb_pd(判断题信息表)

判断题信息表用来存放判断题信息,该表的结构如下表所示。

列名

数据类型

约束

描述

id

int

primarykey

ID号(自动编号)

subject

varchar(200)

notnull

题干

answer

int

notnull

答案

paperId

int

notnull

所属试卷编号

6)tb_blank(填空题信息表)

填空题信息表用来存放填空题信息,该表的结构如下表所示。

列名

数据类型

约束

描述

id

int

primarykey

ID号(自动编号)

subject

varchar(200)

notnull

题干

paperId

int

notnull

所属试卷编号

answer

varchar(200)

notnull

正确答案

fillNum

int

notnull

每题空白数量

7)tb_multiple(多选题信息表)

多选题信息表用来存放多选题信息,该表的结构如下表所示。

列名

数据类型

约束

描述

id

int

primarykey

ID号(自动编号)

subject

v

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 家庭教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1