基于jsp+servlet技术的在线考试系统在线成绩查询大学本科毕业论文.doc

上传人:可**** 文档编号:91262142 上传时间:2023-05-24 格式:DOC 页数:20 大小:200KB
返回 下载 相关 举报
基于jsp+servlet技术的在线考试系统在线成绩查询大学本科毕业论文.doc_第1页
第1页 / 共20页
基于jsp+servlet技术的在线考试系统在线成绩查询大学本科毕业论文.doc_第2页
第2页 / 共20页
点击查看更多>>
资源描述

《基于jsp+servlet技术的在线考试系统在线成绩查询大学本科毕业论文.doc》由会员分享,可在线阅读,更多相关《基于jsp+servlet技术的在线考试系统在线成绩查询大学本科毕业论文.doc(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、19JSP + SERVLET TECHNOLOGY BASED ONLINE EXAMINATION SYSTEM - ONLINE SCORES INQUIRYABSTRACT With the network technology grow up, network has become our life everywhere, inducing education, shopping, consultation and work, etc. Today network developed rapidly, the application of web technology become

2、more and more widely. For education industry, web technology application has obvious advantages. They can use web to manager students and teachers, organize exam on line, and put out some scholastic information by network. It is not only good for increasing diaphaneity of scholastic management, but

3、also good for improving management level. Exam on line can make use of existing resource and reduce teachers heavy workload. The article is mainly talk about network has many advantages for extending service and offering more management condition of school. This article has many particular investiga

4、tions, feasible research and analyze. The system use B/S structure, to build education web of school own on internet. There are 3 stages for system development including system analyze, system design and system implement. From bringing forward design project to carrying through particular investigat

5、ion, the article analyzes feasibility and necessary of this project. In order to improve system integration and stabilization, I use particular system design. To test veracity and stability of testing stage, I use a lots of experiment data in system applied stage. This article based on IE/Server, fo

6、regrounding use Java EE technology and Dreamweaver software, background process use MySQL as database to connect front ground.KEYWORDS : Network, Education, Examination online ,B/S structure ,Java technology基于JSP+servlet技术的在线考试系统在线成绩查询摘 要随着网络信息技术的日益成熟,网络信息技术已经极大的改变了人们的生活,包括教育、购物、咨询、办公等诸多领域。信息领域高速发展的

7、今天,网页技术的应用也越来越广泛与成熟。网络信息技术的应用对于传统教育行业来说会有很大的改善。教育行业可以通过网络进行学生和老师的管理、组织学生进行在线考试、在网站上发布学校相关信息等活动。这样既能增加学校管理的透明度,又提高了学校的管理水平。在线考试还能充分的利用学校的现有资源,减轻教师的工作量,把老师从出卷、阅卷等一些繁重中做中解脱出来。 本系统采用了B/S结构,即使用浏览器进行在线考试。系统开发经历了系统分析、系统设计和系统实施三个阶段。从设计方案的提出,经过详细的调查,分析了方案的可行性和必要性,通过详细的系统设计,提高系统的集成性和便捷性;并在系统实施阶段收集了大量的实验数据,以便测

8、试阶段系统的准确性和稳定性。 设计整体是基于浏览器/服务器(B/S)模式,前台应用Java 技术(stru,后台采用MySQL作为数据库与前台连接。关键词:网络,教育,在线考试,B/S结构,Java技术1 绪论1.1课题背景及意义随着Internet技术的发展,开发基于Web的管理信息系统(MIS)、最大限度利用高校现有资源、提高教学质量是高等院校教学上的新的研究课题。管理信息系统(MIS)是集计算机网络技术、通信技术、信息处理技术于一体的一种人机交互的智能化计算机系统,对信息进行收集、传递、存储及加工处理,用于辅助决策进行事务管理。MIS的发展与计算机网络技术的发展紧密相关,随着因特网技术的

9、广泛应用,MIS的体系结构发生了很大变化,从以往基于客户/服务器(Client/Server)模式的数据访问及安全体系发展到了当前基于浏览器/服务器(Browser/Server)模式的结构体系。该系统采用IBM MyEclipse的集成开发环境,使用Java EE技术,开发基于Web的在线考试系统。网络考试系统将传统教育理论与基于Web的计算机协同工作(CSCW)软件系统有机结合起来,以满足各种课程的考试需求;该系统将教育理论、经验和方法引入系统内部,在完成网络考试任务的同时还获得了科学的量化指标,可以协助高校对学生考试进行科学的评价和分析;在线考试系统将实现网络组卷、在线考试、网上判分等各

10、项相关的功能以优化传统考试的运行模式,在确保考试系统安全性的前提下,在线考试系统将极大地提高考试的组织效率,节约考试成本与时间。1.2考试系统的发展现状目前,各类考试系统层出不穷。按照考场所在位置可以分为:局域网环境的考试系统、基于Web的在线考试系统,以及二者都包含的网络考试系统。开发基于局域网络的考试系统可采用VB,VC,Delphi等开发工具,数据库访问多采用C/S模式。随着教育信息化的不断深入,网络教育越来越多的运用在教学过程中。远程教学、在线辅导、在线考试已被越来越多的人所接受。目前,世界上许多国际考试都采用在线考试的方式,比如:微软认证(微软公司的MCSE,MCDBA,MCSD等考

11、试),思科认证(Cisco career certification),惠普认证(HP-UX),SUN 公司的JAVA认证考试,以及TOFEL,GRE,这些考试都是通过网络实时进行考试的。国内的许多考试也搬到了网上,如驾照模拟考试系统,职业英语在线考试,以及众多的远程教育学院及网络学院的在线考试。在众多的线考试系统中,题目类型大多采用单一的选择题模型,考生只需通过点击正确的选项即可完成考试,同时系统根据已存入的正确答案,可迅速计算出学生的成绩。这种系统虽然可以实现自动判分,但由于考试的题型形式单一,不能适用各种科目考试的需求。由此,本系统选择JSP技术,因为JSP技术可以跨越任何操作系统,配合

12、IBM的eclipse,结合开源的数据库MySql数据库管理系统可以使系统达到最佳组合,实现无缝连接。基于B/S模式(浏览器/服务器)的设计思想,便于扩充应用和升级维护,利用浏览器访问位于WEB服务器的纯WEB页面,实现网络组卷、在线考试、网上判分等各项相关的功能。实现在线网络出试卷与考试等各项相关的功能。2 在线考试系统的需求分析2.1系统结构规划目前,网络应用软件运行的模式主要有两类:客户机/服务器(C/S)模式和浏览器/服务器(B/S)模式。网络考试系统的实现技术可以采用传统的客户机/服务器型(C/S)的MIS型架构,即数据库(试题库)内容放在远程的服务器上,在考试机上安装考试应用程序和

13、数据库客户机配置,因此每次考试时要对机器进行安装、配置,考务工作比较繁琐。而且考试程序放在客户机上,安全性也受到一定影响,因此,客户机/服务器(C/S)模式难于适应当前信息技术与网络技术发展的需要。而利用Web技术,用Web服务器与数据库系统的连接,对数据进行处理,用户也可以通过简单易学的浏览器来处理所需要的数据。这种从浏览器到服务器的数据处理结构就是目前在Internet中十分流行的B/S模式(browser/server)。B/S(browser/server)与C/S(Client/Server)结构相比较,该结构将数据处理功能全部转移到服务器端,实现了数据处理和维护与用户机的无关性,并

14、可随时向用户发送信息及提供系统未建立的数据,使网络的使用和维护更加方便,更快捷。因此,采用B/S架构能够有效的克服对机器的安装,配置等繁琐操作,具有通过浏览器处理数据等优势。2.2开发工具的选择2.2.1 三种动态网页制作技术目前,开发基于Web的应用程序,最常用的三种动态网页语言有ASP(Active Server Pages),JSP(Java Server Pages),PHP (Hypertext Reprocessor)。ASP全名Active Server Pages,是一个WEB服务器端的开发环境,利用它可以产生和运行动态的、交互的、高性能的WEB服务应用程序。ASP采用脚本语言

15、VBScript或JavaScript作为自己的开发语言。PHP是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C,Java和Perl语言的语法,并耦合PHP自己的特性,使WEB开发者能够快速地写出动态生成页面。它支持目前绝大多数数据库。 JSP是Sun公司推出的新一代站点开发语言,他完全解决了只能执行脚本级程序的特点,可以使用编译来执行程序。Sun公司借助自己在Java上的不凡造诣,将Java从Java应用程序和JavaApplet之外,又有新的硕果,就是JspJava Server Page。Jsp可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。JSP是新一

16、代的技术,与传统ASP相比,JSP在许多方面都显示出更多的优越性。配合Tomcat服务器,使开发的应用程序更加方便快捷。2.2.2 Java 的优越性开发基于Web应用程序所使用的JSP技术是运行在支持Java EE标准的服务器之上的,如tomcat,Jboss等。从开发人员的角度来看 :ASP和JSP技术都能使开发者实现通过点击网页中的组件制作交互式的,动态的内容和应用程序的WEB站点。ASP仅支持组件对象模型COM,而JSP技术提供的组件都是基于JavabeansTM技术或JSP标签库。由此可以看出两者虽有相同之处,但其区别是很明显的。1)JSP标签可扩充性 尽管ASP和JSP都使用标签与

17、脚本技术来制作动态WEB网页,JSP技术能够使开发者扩展JSP标签得以应用,JSP开发者能定制标签库,所以网页制作者充分利用与XML兼容的标签技术强大的功能,大大减少对脚本语言的依赖。2)JSP跨平台的可重用性 JSP的开发人员在开发过程中一直关注可重用性。JSP组件(企业JavabeansTM,Javabeans,或定制的JSP标签)都是跨平台可重用的。企业Javabeans组件可以访问传统的数据库,并能以分布式系统模式工作于UNIX和WINDOWS平台。JSP技术标签可扩充功能为开发人员提供简便的,与XML兼容的接口即共享网页的打包功能使其完全的工业标准化。 2.3数据库管理系统的选择开发

18、B/S结构的在线考试系统,一定会处理大量的数据,因此选择合适的数据库管理系统对系统的性能影响深远。基于Web的应用系统可选择的数据库管理系统有:Oracle,MS SQL Server,Mysql,Sybase, MS Access。其中,使用JSP技术开发的web应用程序可以Oracle, SQL Server, Access,MySql。而开源数据库Mysql与JSP技术都是同是SUN公司的产品(先已被Oracle公司收购),可以使软件开发达到更好的效果。总之,JSP与Tomcat的完美组合,为Web模型提供了一个更为稳定,高效,安全的运行环境。采用目前最为先进的可视化开发系统MyEcli

19、pse以及最有效的数据库系统Mysql进行开发,保证了软件的功能,提高了开发的效率。2.4在线考试系统的功能分析在线考试系统分成三个系统功能模块:学生模块、教师模块(管理员)模块。学生通过主页登录后,开始进入考试界面,考生需在规定时间内完成该科目所有试题,系统自动评分,存入后台数据库,展示学生自考成绩,并可查看学生所选试题的标准答案,最后考生安全退出系统。教师模块登录后,教师可以查看试题基本信息,添加该教师所教科目的选择题信息、填空题信息、发布选择题与填空题,按照班级学生的考试成绩和根据考生姓名查看考生成绩。3 在线考试系统的概要设计3.1系统目标本系统属于小型的在线考试系统,可以从数据库中随

20、机抽取试题,并且可以自动对考生的答案评分。本系统主要实现一下目标:1)系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。2)实现从数据库中随机抽取试题。3)对用户输入的数据,进行严格的数据检验,尽可能地避免认为错误。4)实现对考试结果自动评分。5)实现教师对试题信息单独管理。6)系统最大限度地实现了易维护性和易操作性。3.2系统功能结构 在线考试系统前台结构图在线考试系统前台功能结构图如图3-1所示。在线考试系统前台有以下几个模块:注册模块,登陆模块,以及随机生成试卷并自动评阅,以及对整个考试系统的意见反馈。查询模块评分模块随机试题登录模块注册模块成绩查询开始开始生成

21、考卷图3-1 在线考试系统结构图在线考试系统后台功能结构图如图3-2所示。在后台主要有学生管理模块和试题管理模块。在学生管理模块中可以通过姓名查找学生成绩或者查询一个班级的学生成绩,在试题管理模块中,可以录入,查询,管理选择题和填空题,对题型进行管理。在线考试系统后台管理试卷管理学生管理查找班级查成绩通过姓名查成绩管理试题录入试题图3-2 在线考试系统后台结构图3.3业务流程图在线考试系统的业务流程图如图3-3所示。用户在登录界面根据相应的类型选择登录,如果没有账号则选择注册,登录成功后,根据选择的角色挑战到不同的页面,如果是老师,则跳转到后台管理界面,如果是学生,则生成一套试卷进行考试。图

22、3-3 系统流程图3.4在线考试系统的数据库设计在开发在线考试系统前,分析了系统的数据量,由于在线考试系统中试题及考生信息的数据量会很大,因此选择MySql数据库存储数据信息,数据库命名为db_examsystem,在数据库中创建了6个数据表存储不同信息。3.4.1 在线考试系统的数据库表结构设计 1)根据设计好的E-R图在数据库中创建各表,tb_student保存所有老师信息表,如图3-9所示。表4.1学生信息表列 名数据类型可否为空说 明studentidnumberNOT NULL考生主键,外键usernamevarchar(20)NOT NULL用户名(唯一)namevarchar(1

23、0)NOT NULL姓名passwordvarchar(30)NOT NULL用户密码addressvarchar(50)NOT NULL地址sexvarchar(2)NOT NULL性别emailvarchar(50)NULL邮件(2)教师信息表(teacher)包括的数据项有:主键, 用户名、密码。表4.2 教师表列 名数据类型可否为空说 明teacheridintegerNOT NULL教师主键usernamevarchar(10)NOT NULL用户名passwordvarchar(30)NOT NULL密码(3)科目信息表(subject)包括的数据项有:主键,科目名,考试时长,考试

24、是否公开标志,科目描述,科目发布的时间。表4.3科目信息表列 名数据类型可否为空说 明subjectidintegerNOT NULL科目主键,外键namevarchar(20)NOT NULL科目名字timenumberNOT NULL科目考试的时间statenumber(1,0)NOT NULL标志考试公开introvarchar(50)NOT NULL科目描述sdatevarchar(50)NOT NULL科目发布的时间 (4)问题信息表(question)包括的数据项有:问题主键,引用科目的外键,问题内容,问题类型标志,问题分数,正确答案,问题录入时间等信息。表4.4 问题信息表列 名

25、数据类型可否为空说 明questionidintegerNOT NULL问题主键,外键subjectidintegerNOT NULL引用科目外键contentvarchar(2000)NOT NULL问题内容qtypenumber(1,0)NOT NULL问题类型标志scorenumber(5,0)NOT NULL问题分数rightanswervarchar(10)NOT NULL正确答案sdatevarchar(10)NULL问题录入时间(5)选项信息表(options)包括的数据项有:选项主键,引用问题id,选项内容。表4.5 选项信息表列 名数据类型可否为空说 明optionidint

26、egerNOT NULL选项主键questionidintegerNOT NULL引用问题idcontentvarchar(2000)NOT NULL选项的内容(6)考试记录信息表(examrecord)包括的数据项有: 考试记录主键,引用考试结果的外键,引用问题外键,选择的答案。表4.6 考试信息表列 名数据类型可否为空说 明examrecordidintegerNOT NULL考试记录主键resultidnumber(9,0)NOT NULL引用结果外键questionednumber(9,0)NOT NULL引用问题外键answervarchar(10) NOT NULL选择的答案(7)

27、考试结果信息表(result)包括的数据项有:问题主键,引用考生外键,引用考试科目外键,考生得分,考试开始时间,考试结束时间表4.7 考试结果信息表列 名数据类型可否为空说 明resultidintegerNOT NULL问题主键,外键studnetidintegerNOT NULL引用考生外键subjectidnumber(9,0)NOT NULL引用考试科目外键scorenumber(9,0)NOT NULL考生得分starttimeDateNOT NULL考试开始时间endtimeDateNOT NULL考试结束时间(8)登录信息表(loginlog)包括的数据项有:登录主键,登录名,登

28、录成功标志,是否为老师的标志,登录的IP地址,登录的时间。表4.8 登录信息表列 名数据类型可否为空说 明loginlogidintegerNOT NULL登录信息主键usernameVarchar(30)NOT NULL登录名successnumber(1,0)NOT NULL登录成功标志isteachernumber(1,0)NOT NULL判断是否是老师ipvarchar(15)NOT NULL登录的ip地址logtimeDateNOT NULL登录的时间3.4.2 数据库的安全性、信息的保密性考虑由于考试系统的特殊性,数据的安全与保密显得尤为重要。保密性是指用户在网上的所有信息应有一定

29、的保密度,不同类型的用户之间的内容是互相保密的。安全性是指用户参加一次考试是一个过程,对于所有的用户,服务器都加以跟踪。为了确保其安全与保密性,采用如下方案:一、考生的身份验证。凡进入在线考试的用户,都要通过用户身份验证才能进入。教师用户按权限进行操作,确保数据的公共性与私有性。不允许用户执行非法的操作,防止用户无意或有意进行的破坏。二、在时间上加以严格控制。在用户登录后将用户的登陆时间存入到浏览器的cookies中,当用户断线重新连接后,进行的考试时间仍然是以最初登录考试系统的时间为参考点,而不是重新生成。禁止用户查看试卷源文件及拷贝功能, 即用户不能下载试卷到本地,不能通过获取源代码得到试

30、卷。以下为禁止使用鼠标右键功能的javascript脚本语言代码: self.moveTo(0, 0); self.resizeTo(screen.availWidth, screen.availHeight); /设置打开窗口大小 function keydown() if (event.keyCode = 8) /屏蔽BackSpace键 event.keyCode = 0; event.returnValue = false; if (event.keyCode = 13) /屏蔽Enter键 event.keyCode = 0; event.returnValue = false; i

31、f (event.keyCode = 116)/屏蔽F5刷新键 event.keyCode = 0; event.returnValue = false; 4 在线考试系统的详细设计4.1 公共类的设计和实现的功能在开发项目中以类的形式来组织、封装一些常用的方法和事件,不仅可以提高代码的重复率,也可以方便代码的管理。本系统中创建了一个公共类HibernateSessionFactory类,其中包含getSession方法。具体代码如下:public static Session getSession() throws HibernateException Session session = (

32、Session) threadLocal.get();/从ThreadLocal对象中获得Session对象if (session = null | !session.isOpen() /判断获得的Session对象是否为空或者未打开if (sessionFactory = null) /如果没有创建SessionFactory对象,则首先创建rebuildSessionFactory();/如果SessionFactory对象不为空,则调用其openSession方法创建Session对象session = (sessionFactory != null) ? sessionFactory.

33、openSession(): null;threadLocal.set(session);/在ThreadLocal对象中保存该Session对象return session;public static void rebuildSessionFactory() configuration.configure(configFile);/读取配置文件sessionFactory = configuration.buildSessionFactory();/根据配置文件创建sessionFactory对象public static void closeSession() throws Hiberna

34、teException Session session = (Session) threadLocal.get();/从ThreadLocal对象中获得Session对象threadLocal.set(null);/将当前线程Session对象从ThreadLocal对象中移除if (session != null) session.close();public static org.hibernate.SessionFactory getSessionFactory() /取得SessionFactory对象return sessionFactory;4.2登录和注册模块实现过程4.2.1

35、登录模块实现登录模块的具体步骤如下:新建一个名为Login.jsp的网页,用于实现系统的登陆功能。新建index.jsp和index.html分别放在student和teacher下面,用于登录时不同的角色界面。新建register.jsp页面,当学生和管理员首次进入该系统,由于后台数据库中没有他们信息,进入register.jsp页面。 系统登录界面如下图4-1所示。4.2.2 注册模块下图4-2 和 4-3为学生用户注册。当学生根据提示输入正确的格式之后,则可以完成注册。4.3.3 成绩查询模块4.3.4 试卷管理模块5 系统设计与功能展望5.1 主页设计与测试一、登录模块 为所有用户提供

36、登录的窗口,学生登录就进入学生模块,老师和管理员登录就进入教师模块。二、学生模块学生模块里面分为三个子模块:资料管理模块:进去后可以进入到个人的资料管理子模块中修改自己的密码,以及其他信息。在线考试模块:点击进去后就进入到了考题的选择模块,只能看见未考过的考试科目和已经公开的考试科目进行考试。成绩查询:考生可以查询自己在本考试系统中参加过的考试进行成绩查询,还有具体的详细信息,例如考试的日期,考试的开始时间与考试结束的时间等等。三、教师模块教师模块里面分为五个子模块:1、学生管理:点击进去后可以看到所有的学生信息,信息进行了分页理,每页只显示十条数据,还可以添加学生,删除学生的操作。可以根据学

37、生的姓名对学生的信息进行查找。2、试题管理:当以管理的身份登录到系统后台后,点击科目管理就可以看见所有的科目信息,可以对科目进行上架和下架的操作,还可以为科目下添加试题的功能,也就是试题库,可以对试题库中的试题进行管理。3、成绩管理:点击成绩管理进去后,首先会为你提供一个查询的条件选择,科目的显示是在一个下拉列表框显示的,列表框中的考试科目是利用ajax技术动态生成的。考生的考试情况信息进行了分页处理,每页显示十条考生的考试信息。 4、教师管理:这个模块只能由该系统从老师中指定的管理员才能进行操作,其他人操作时系统会提示,您没有修改教师的权限。当以管理员的身份登录进去后,就进入到了所有教师的信

38、息显示界面,每页显示十条信息,可以上下翻页,可以对教师的密码进行修改,并且不需要输入对应教师的旧密码,直接修改即可。还可以添加教师以及删除教师。5.2功能展望 由于知识水平与系统的实现时间有限,本系统只实现了选择题的录入与测试。但是系统的开发是一个不断发展与完善的过程,针对不足之处我们可以去修改,加强。实践告诉我们,基于Web的在线考试系统会越来越完善,会越来越普及。对本系统的展望,有如下几点探讨: 本论文的描述基本上完成了需求分析中的主要功能,其中的主要功能线就是考生考生输入自己的信息,系统对考生输入的信息进行核对,核对成功,考生进入考试页面,考生选择自己考试的科目后进入试题的功能模块,考生进入考试的页面开始考试,考试的时间在考试上面有提示,可以帮助考生很好的去把握时间,如果时间到了之后,那么系统会自动的结束考试,并记录下考生当前所做的题目,并且考生自动退出考试答题界面,然后系统对对试卷的客观题部分进行阅卷,然后把分数记录下来,存入考生的档案,方便考生随后自己的查询。但是由于现有条件的不足,本系统还存在于一些缺陷,例如,考题还不够完善,现在的考题只能够满足客观题的自动的判分,还有就是系统的兼容性比较弱,所以后期还要加强这方面的功能的实现。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁