毕业设计(论文)基于BS模式的Java在线考试系统的设计与实现

上传人:1888****888 文档编号:37544459 上传时间:2021-11-03 格式:DOC 页数:34 大小:1.11MB
返回 下载 相关 举报
毕业设计(论文)基于BS模式的Java在线考试系统的设计与实现_第1页
第1页 / 共34页
毕业设计(论文)基于BS模式的Java在线考试系统的设计与实现_第2页
第2页 / 共34页
毕业设计(论文)基于BS模式的Java在线考试系统的设计与实现_第3页
第3页 / 共34页
点击查看更多>>
资源描述
河南机电高等专科学校毕业论文毕业设计论文论文题目:基于B/S模式的Java在线考试系统的设计与实现目录1 绪论I1.1 课题研究背景31.2 国内外发展现状42 需求分析62.1问题分析62.2任务概述62.3功能需求概述62.4项目目的72.5方案选择72.6运行环境93 系统的总体设计103.1 指导思想103.1.1 B/S结构开发思想103.1.2面向对象机制的设计思想103.1.3代码分层思想113.2功能需求分析113.3系统总体设计113.3.1系统管理模块133.3.2 试题模块设计143.3.2教师管理模块143.3.3在线考试模块153.4数据库的设计173.4.1 数据库介绍173.4.2 数据词典分析174 系统的功能实现194.1系统流程的实现194.2系统模块功能的实现方法194.2.1数据库连接页面194.2.2系统登录页面204.2.3题库管理页面224.2.4待考页面234.2.5考试页面244.2.6在线评分页面264.2.7后台管理页面274.2.8学生账号管理页面28结束语29致谢30参考文献3131摘要 在线考试系统旨在实现考试的无纸化管理,对一些科目的考试可以通过互联网络或局域网进行,方便校方考务的管理,也方便了考生,尤其适合考生分布广,不易集中的远程教育。本论文主要开发系统的后台管理系统Java在线考试管理子系统,它包括试题管理、考生管理、在线制作试卷、控制学生考试的设置、试卷审批等功能。本论文主要介绍了对Java在线考试管理子系统的分析、设计和开发的全部过程。运用ER图,程序流程图等对在线管理子系统的设计过程进行详细的说明。全文共分为绪论、需求分析、系统的总体设计、系统的功能实现四部分。以就业为导向,以能力培养为主线,运用现代网络技术构建新型高级技能型人才培养平台,实现课程在线考试的公平性和安全性。基于Web技术的网络考试系统可以借助于遍布全球的因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式,基于Web的考试系统设计是现阶段网络课程研究开发的一个热点。本论文以“基于Web技术的Java程序设计课程考试系统”网站建设为背景,展开在线网络考试系统的讨论,实现对各种传统考试的改革。关键词:JSP,Java,Mysql数据库,B/S模式AbstractOn-line examination system the aim is carry out examination of have no the paper turn a management, can carry on through Internet net or bureau area net to some examinations of categories, convenient school square test the management of duty, also convenient the examinee is particularly suitable for examinee to distribute widely and not easily concentrated of long range education.I mainly develop the system-Java of the backstage managements on-line examination management sub- system of system and it includes to try the management, on-line creation of a management, examinee to try book, control the constitution that the student examine and try an examination and approval etc. function.This thesis mainly introduced to manage the analysis, design of the sub- system and all processes of the development to Javas on-line examination.Make use of ER diagram, procedure flow chart etc. to on-line manage the design process of sub-system to carry on expatiation.The full text is totally divided into the design, key technique of the analysis, system of the development project, need to solve, conclusion four part.Employment-oriented training to the main line capacity, use modern network technology Construction of a New High-skilled personnel-training platform achieve a fair examination, the answer to safety. Therefore, will select the network test method will be later take a test the development tendency? May draw support based on the Web technology network test system in proliferates global the Internet to carry on, therefore takes a test already may in local carry on, also may in different carry on, has developed the test flexibility greatly. For example the present many international famous computers companies conduct each kind of authentication test major part selects this method. Based on the Web test system design is a present stage research development hot spot The present paper take based on the Web technology network test system the website construction as a background, launches the on-line network technology test system the discussion, realizes to each traditional test reform.Keywords:JSP, Java,databases of the Mysql, mode of B/S1 绪论近几年来,随着Internet的崛起,远程教育开始发展,普及网络教育的呼声日益高涨,其势头不亚于电子商务。联合国教科文组织1998年在其一项调查报告中指出:无论是发达国家还是发展中国家,都不同程度存在教育滞后于现实需要的问题,特别是第三世界国家。而普及远程教育,尤其是网络教育,不仅是解决这一问题的有效途径,而且将成为革新传统教育模式的重要动力。中国的网络教育也随Internet的发展而同步增长,同时,网络教育也为中国的教育事业开辟了新的天地。1.1 课题研究背景随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。(1)其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。(2)显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。(3)例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。伴随着远程教育的蓬勃发展,作为教学当中不可分割的一部分的在线考试系统也得到了当今远程教育研究者的关注,考试是考察学生对所学习知识的接受和理解程度的重要手段,无纸化的考卷,考试的随时性,随地性,这些特点都是研究并开发网络考试系统主要的原因,网络考试系统远远超越了传统考试固定时间,固定地点的考试模式的限制,将给学生和老师带来极大的便利。随着Internet的相关技术的发展,特别是Web技术的出现,人们开始致力于研究和开发基于Internet考试系统,这也大大推动了远程教育的发展。如今世界上对于基于Internet的远程考试系统所进行的研究开发工作不是很长,但是基于Web技术构建的在线考试系统已然成为发展的主流。数据库安全、共享、数据传输过程的安全性、访问控制技术、身份识别技术都是构建考试系统要考虑的问题。 (4)目前,一些远程教育机构已经开发出了在线考试系统,基本实现了基于Internet的B/S结构在线考试。通过Server端的后台试题库动态生成考卷和对于标准化的试题即时评定成绩。但是与传统的纸面考试相比,目前的在线测试都是基于标准化考试的,而且一般只能用于非正规的考试,因为对于很多方面考虑的还不是很完善,因而使得在线考试在近段时间很难完全替代传统的考试。1.2 国内外发展现状国际上,基于计算机的考试蓬勃发展,对于题库建设的理论研究不断深入,实用考试系统也层出不穷。美国心理协会在1986年出版了关于如何开发、使用计算机化考试以及解释考分的指南,成为了考试和软件开发者的事实标准。投入实际使用的例子有,1982年才有远距离教育方式的美国学院(American College)考试使用计算机进行测试;1993年美国教育考试中心(Eraduade Record Examination简称 ETS)考试;从1994年开始,美国护理证书考试完全在计算机上进行。目前,国外许多大型测验出版机构、地区教育主管部门和专业资格认证机构都以某种测量理论为指导建立题库、设计考试系统,并进行各项相关研究。除了这类行业专用的大型考试系统之外,供普通教师使用的通用考试系统软件也有相应的研究和产品。如英国Question Mark Computing,Ltd公司出品的Question Mark,就是一种基于项目反应理论的,可供广大教师使用的通用的考试系统。在我国,计算机考试系统和题库的理论研究和实践应用起步比较晚。但发展也比较迅速,研究和开发活动比较活跃。北京师范大学、华北师范大学等高等院校都有教师在进行教育测量理论应用于题库建设方面的研究。清华大学、上海交通大学、北京师范大学等高校,也有教师在组织力量致力于实用考试系统的研究和开发工作。(1)我国的专用考试系统主要针对计算机考试,其他行业和科目的考试系统太少。(2)计算机在线考试系统由于操作类题目自动出题有较大的难度,基本没有实现题库化的管理。(3)系统对传统的客观题虽然一般建有题库但不大,多采用随机抽题组卷的方式,缺乏教育测量理论作为依据。(4)考试完成后,分数和试题统计分析比较简单,没有充分挖掘数据所包含的信息。(5)通过考试系统或题库系统对最终用户即教师的需求分析做的不够透彻,忽略老师们渴望能自由地操纵试题库的需求,没有完全实现用户自主初始化试题库、自主维护试题库、自主调用试题库的功能。加上软件实用水平和商品化工作方面的不足。通用系统并没有被广大教师认可和使用。2 需求分析2.1问题分析传统的学校教学中,进行一场考试,要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷,这是一个繁杂的过程,需要大量人力、物力与时间的投入,已经越来越不适应学校信息化建设与现代教学的需要。尤其在远程网络教学中,学生分布广,不易统一集中安排考试,给校方和学生带来了众多的不便。而在线考试系统,正是信息化建设的产物,它是传统考场的延伸。它可以利用互联网络和局域网,随时随地的对学生进行考试,加上数据库技术的利用,大大简化了传统考试的过程,因此在线考试是电子化教学的不可缺少的辅助手段。在当今信息时代,计算机技术与网络技术越来越广地应用于各个领域,改变着人们的学习、工作、生活乃至思维方式,也引起了教育领域的重大变革。将计算机与网络技术应用于现代高等教育中,是现代高等教育发展的需要,也是改革教育模式,提高学校教学效果和教学效率、提高科研和管理水平的必要手段。2.2任务概述在线考试管理子系统主要实现题库管理、考生管理、成绩查询、试卷管理等功能,充分利用计算机科学与技术,改变传统的考试操作方式,实现无纸化考试的模式。2.3功能需求概述系统需要解决的主要问题:主要开发的是后台管理子系统,在此系统中主要对前台考试系统的显示信息进行管理和设置。子系统分为以下功能模块如图2-1所示:题库管理:用于对单个试题的增、删、查等基本维护,还可对题库进行数据备份和数据还原。针对不同题型、不同应用范围及不同科目对试题进行维护。用户管理:主要是对用户资料的修改等。成绩管理:对每次考试的学生成绩的基本信息进行维护,并提供学生成绩的统计管理。在线考试管理子系统成绩管理题库管理 用户管理图2-1在线考试管理子系统2.4项目目的在线考试系统的总体目标:在线考试系统可以帮助教师完成一个考试从题目设计,考试安排,考试实施,考卷批改到分数统计总结的所有工作。所有的考试数据和其它数据库需要一种主流的方式进行存储和管理,例如使用数据库技术。考试数据的存放和处理必须对考试保密,需要一定的安全性保障。对考试的系统目标:这个软件是分布式的,这意味着只要有考试客户端可以连接到考试应用服务器,任何考生在任何地方进行身份确认,都能完成考试。稳定性可以保证每一次考试对每一个考生是公平的,随机性可以避免作弊的发生。对教师的系统目标:提供一个功能全面的考核管理客户端,可以进行考试设计和安排。通过管理客户端,教师可以进行考试的身份管理。考生的考试结果可以被保存下来,供教师进行分析统计和察看。2.5方案选择开发在线考试系统,提出以下解决方案:选择Mysql作为后台的数据库,选择Java,JSP,JavaScript,Html作为应用程序开发工具,运用Tomcat服务器技术,整个系统完全基于B/S (Browser/Server)模式进行设计。Web应用程序开发环境JSP技术JSP的全称是Java Server Pages,它是SUN推出的一种动态网页技术标准。它在传统的静态页面文件(*.html,*.htm)中加入Java程序片段和JSP标记,就构成了JSP页面。JSP具有以下的优点:将业务层与表示层分离:使用JSP技术,网络开发人员可充分使用HTML来设计页面显示部分(如字体颜色等),并使用JSP指令或者Java程序片段来生成网页上的动态内容。能够跨平台:JSP支持绝大部分平台,包括现在非常流行的Linux系统,应用非常广泛的Apache服务器也提供了支持JSP的服务。组件的开发和使用很方便:如ASP的组件是由C+,VB等语言开发的,并需要注册才能使用;而JSP的组件是用Java开发的,可以直接使用。一次编写,处处运行:作为Java开发平台的一部分,JSP具有Java的所有优点,包括Write once , Run everywhere。Tomcat应用服务器目前支持JSP的应用服务器是较多的,Tomcat是其中较为流行的一个Web服务器,Tomcat是一个免费的开源的Serlvet容器,在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的Webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的JSP时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译.编译以后,访问将会很快。MysqlMysql是一个小型关系型数据库管理系统,开发者为瑞典Mysql AB公司。在2008年1月16号被Sun公司收购。目前Mysql被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了Mysql作为网站数据库。B/S 开发模式伴随着Internet的迅速发展,计算机技术正在由基于C/S(Client/ Server)模式的应用系统转变为基于B/S模式的应用系统。B/S模式带来了巨大的好处:开发成本及维护成本降低.由于B/S架构管理软件只安装在服务器端(Server)上,即应用程序在部署,升级,维护时,只需要在服务器端进行配置就可以了,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。2.6运行环境(1)硬件需求: PIII/256M/10G 及以上配置,要求为考试系统分配足够的数据库磁盘空间。(2)推荐配置:PIV 2G/512M/40G。(3)操作系统需求:Windows2000及以上操作系统 。(4)数据库软件需求:Mysql中文版数据库。(5)件软件需求:Tomcat系列服务器。3 系统的总体设计3.1 指导思想3.1.1 B/S结构开发思想B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层(3-tier)结构。一个三层架构的应用程序由三部分组成,这三部分各自分布在网络中的不同地方。这三个部分分别是:工作站或表示层接口、事务逻辑、数据库以及与其相关的程序设计。在一个典型的三层架构应用程序中,应用程序的用户工作站包括提供图形用户界面(GUI)的程序设计和具体的应用程序入口表格或交互式窗口。事务逻辑处在局域网(LAN)服务器或其他共享主机上,它作为响应工作站所发出客户请求的服务器,而相对于处于大型机的第三层它是作为客户端,并且决定需要什么数据以及数据存储在哪里。第三层包括数据库以及处理读写以及访问数据库的程序。然而应用程序的设计可能比这个架构要复杂,对于大型程序来说,这个三层模式是一种比较简便的考虑方法。这种应用程序的设计使用客户/服务器模式,各层可以同时开发,并且可以由不同的成员组用不同的语言来开发。因为各个层次的开发不会影响其他层次,所以这种模型对于进一步开发软件是很方便的。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。3.1.2面向对象机制的设计思想所有计算机均由两种元素组成:代码和数据。精确的说,有些程序是围绕着“什么正在发生”而编写,有些则是围绕“谁正在受影响”而编写的。第一种编程方式叫做“面向过程的模型” ,按这种模型编写的程序以一系列的线性步骤(代码)为特征,可被理解为作用于数据的代码。如C等过程化语言。第二种编程方式叫做“面向对象的模型” ,按这种模型编写的程序围绕着程序的数据(对象)和针对该对象而严格定义的接口来组织程序,它的特点是数据控制代码的访问。通过把控制权转移到数据上,面向对象的模型在组织方式上有:抽象、封装、继承和多态的好处。在系统开发过程中,采用软件工程的开发管理,在开发的过程中也遵循软件工程的思想,软件工程的主要环节有:人员管理、项目管理、可行性与需求分析、系统设计、程序设计、测试、维护等。3.1.3代码分层思想由于采用B/S设计模式分层思想,同时根据软件工程的管理思想及系统分析的设计与分析的思想进行系统的开发,利用Java语言开发Web应用程序,提供String+Hibernate+Spring框架对系统的程序代码结构进行分层。3.2功能需求分析该系统主要模块:教师管理模块,在线考试模块,下面就这些模块在该系统中应有的功能进行以下分析,只有这样,才能让用户对该系统有一个更好的了解。3.3系统总体设计根据需求分析,设计课程考试系统的主要功能模块有:后台管理模块、学生在线考试模块、教师管理模块等。系统总体设计功能模块图如图3-1所示:课程考试系统后台管理学生在线考试教师管理题库管理学生账号管理教师账号管理系统管理在线考试成绩查询学生管理试卷管理成绩管理图3-1 系统功能模块图系统结构图,如图3-2所示:打开登陆界面图,用户登陆,系统根据不同的用户类型来选择相应的跳转页面。考生界面包括开始考试、资料修改和成绩的查询;管理界面可以对用户的添加以及修改、试卷的管理、试题的添加与删除、学生成绩的管理等。在线考试系统考 生前 台后台管 理理考试管理试卷管理成绩管理用户管理开始考试资料修改成绩查询图3-2 系统结构图3.3.1系统管理模块管理员可以向题库中添加各种类型且符合要求的试题也可以对它们进行修改和删除。同时,管理员也能用户、考试记录等数据进行管理,在此系统中可以由若干个管理员,即系统管理员,他们具有一般用户所没有的权限,即具有管理用户、试题以及试卷等内容的权力,它不需注册,在数据库有一个表来存放相关信息,可由以存在的管理员添加或删除管理员。一般用户:主要是指学校的学生和企事业单位的培训对象等。(1)试题库管理:对题型试题库的管理,使试题的增删、编辑更为简便。试题录入每道试题有类型、试题内容与选项和答案等栏目。管理员输入完以后,即可看到预览效果。如果输入不合法,或者该科题库中已有该试题编号和内容等,则系统添加就不会成功。试题修改管理员还可以对试题进行修改。也可以先对试题进行先删除后添加,从而达到预期的效果。试题删除管理员可以删除不再需要的试题。(2)账号管理账号的添加基本信息有ID号、姓名、性别、密码等,对于用户输入的不符合系统要求的数据,系统仍旧给出提示或警告。账号编辑管理员可以修改已存在的账号信息,如果输入数据不合法,系统将会给出提示并重新录入。3.3.2 试题模块设计鉴于主观题的主观性,目前无法实现系统自动判卷,所以本系统作的题型只有客观题类型:单选题。一般情况下,单选题往往在四个供选的答案A、B、C、D中选择唯一正确的答案。因而,本系统中所涉及的题型跟过去的大体相同,题型的样题设计如表3-3所示:表3-3 系统功能模块表题号1题干Java语言的特点选项A:继承选项B:封装选项C:多态选项D:以上都是作答:A B C D3.3.2教师管理模块教师管理作为在线考试系统中的一个重要环节,主要实现对学生用户的管理,学生成绩的查询和删除。最重要的是设置考试试卷的综合参数:试题的类型,试题的数量和试题的分值,最后是考试时间的设置。(1)学生管理在此模块中教师可以查询学生的综合信息。可以直接查询所有学生的基本信息并且对学生资料的修改等。(2)试卷管理在此模块中主要是设置学生考试所用试卷的参数信息,首先新增一张试卷并设置如下信息:考试试题的类型、每题的分值、考试时间。试卷信息设定以后,如果不满意,还可以再重新修改试卷信息。(3)成绩管理此模块所涉及的信息主要是查询学生的成绩,可以直接在管理用户信息中直接查看。作为教师来讲,往往需要对全班学生的每次考试情况做个整体的调查,在此通过本期统计来实现。每次考试过后,教师可以直接从这里查看整体学生的考试情况。3.3.3在线考试模块进入在线考场是本系统最重要的部分之一。因为一个系统如果涉及到现实的话,就必须考虑得十分周到、完善。考生登录后,就可以调出试卷进行在线考试。考生的其答题信息通过单、复选按钮选择答案来反映。考试结束采取自主交卷和到了规定的时间自动题示有机结合的方式办法予以实现。系统严格控制整个考试过程,实行时间的监控与权限的控制,考生需要在限定的考试时间内交卷。根据需求分析,在线考试模块流程图如图3-4所示:开 始输入用户名和密码是否正确否 是选择考试科目随机出题形成试卷答题及交卷判 卷显示考分结束 束图3-4 在线考试模块流程图当用户开始进入在线考试系统的时候,首先输入用户名和密码,进行验证,如果用户名和密码正确,这时系统回自动提供给用户一套试题,从此时起,系统将对用户进行计时,当时间结束的时候,系统将提示你考试时间已经到了,提醒你交试卷,当你提交后,系统回马上显示出你的成绩。否则,你将返回考试登录界面,再次试着输入正确的用户名和密码。如果你还没法进入,请先与教师联系,然后再次登录考试系统。计算机自动阅卷:本系统只考虑客观题,要求计算机能自动阅卷,然后马上显示出考生分数。成绩查阅:考生考完以后,教师应该能对所有纪录进行查询。除了实现上述功能以外,在线考试系统还应该具有友好、简洁的界面,安全性要高,稳定性要强,能够满足100人以上同时及进行在线考试。3.4数据库的设计3.4.1 数据库介绍本系统采用的是 Mysql数据库,根据需求分析所作分析,这里创建了五张表,分别是单选题库表、学生成绩表、学生信息表、教师信息表和试卷信息表。在下面就这五张表做一下分析,并分别列出了其表结构。3.4.2 数据词典分析无论做一个什么系统,数据库是必不可少的,它是实现系统的纽带,为此,这里要把该系统中需要的数据库中的表做出详细的分析与设计。因为本系统的设计有单选题类型,所以分别建立了对应的数据库表questin,此外又建立了用户对应的表,详细设计分别如表3-1、表3-2所示: 单选题库表结构,如表3-1所示:表3-1 question 表字段名称类型长度说明idchar20试题号,主键mchar100题干achar100选项Abchar100选项Bcchar100选项Cdchar100选项Danswerchar10答案 用户库表结构,如表3-2所示:表3-2 users 表字段名称类型长度说明idchar10学号,主键namechar20姓名passwordchar20密码emailchar30电子邮箱addresschar50住址scoreint6考试得分timeindate登录时间timeoutdate退出时间通常,当登录一个需要注册的网站的时候,系统是如何知道用户是否已经注册过,即使注册过了,登录的时候是怎么知道用户输入的用户名和密码不正确,这时,就需要一个用户表,有用户名和密码,为用户在考试系统中验证身份做好准备。4 系统的功能实现在进行了整体设计以后,就开始进行详细的设计及编码工作。也就是设计文件和把他们有机地组织在一起实现所有功能。4.1系统流程的实现根据系统总体设计,首先系统要有一个登录界面,用户可以从该界面登录参加考试。管理员和教师也应该有一个进入管理登录界面的通道。在考生正确输入用户名和密码以后,接着应该进入待考页面。在该界面中,考生可以查询以前的考试成绩,考试状态时直接点击“进入考场” 。这个人机交互的过程是必不可少的。考生点击进入考场以后,进入开始考试界面,由计算机提取试题,显示出来组成试卷,并开始进行计时。考生再次进行考试,答完试题后交卷,进入下一个界面。考生提交答卷后,由计算机进行处理-判卷,得出考试分数,显示出来,并把该生考试记录存入数据库。在这个界面上应该可以返回继续进行考试或回到登录界面。以上是系统进行考试功能的部分,要对系统进行管理,如试题管理、成绩管理、用户管理等就需要设计一些管理界面。下面就来逐步进行设计。要进行管理首先要有管理员登陆验证,这个界面与用户登录界面表面一样,但是他们是从不同的表中提取数据进行验证的,以便于系统扩充和增加安全性。管理员登录以后,应该有一个管理项目选择界面,其中包括管理用户选项、管理题库选项。管理用户的界面可以实现用户的增加的功能,管理员在此可以对用户进行管理。题库管理界:点击选项可以分别进入相应功能的管理,在每个页面里都可以实现对试题的添加和删除。最后是系统的安全退出,可以安全的退出后台管理页面,返回到考试系统的主页面。4.2系统模块功能的实现方法4.2.1数据库连接页面该文件实现的是连接并打开数据库的功能。本系统采用的是Mysql数据库,这里采用的连接方式是JDBC的连接方式。主要代码实现如下: 打开数据库:变量“url”主要是记录存放数据库的相对路径。Connetin的含义是定义了一个变量用来存放数据库连接所创建的连接对象。4.2.2系统登录页面在本系统中登录页面的文件是login.jsp文件。这里就注重介绍一下后台管理的登录页面。该文件的功能使这样实现的:表单提交服务器端的Servlet程序对提交信息进行处理,验证用户信息正确无误后将转向管理页面。重点程序如下:在这里首先接收从表单传来用户输入的用户名和密码信息,再定义一条SQL语句,该语句的功能是查询在库里是否有满足条件的记录。然后定义一个rs变量,该变量主要用来记录执行SQL后的结果。如果没有满足条件的记录则rs.next()为空,那么会系统会自动重定向到登录界面,返回登录页面让用户重新输入。如果验证合法,会自动进入到相应的界面。登陆页面如图4-1所示:图4-1考试首页登录图4.2.3题库管理页面实现了对单选题题库的增加,管理员登录成功后,可以通过本页面来增加试题。在本页面中的相应文本框中输入合法的内容后,点击“增加试题”按钮,则会向服务器端发送请求,成功后,服务器端会把页面重定向到本页面,从而可以实现继续增加试题的目的。点击“返回”按钮,则会返回到管理界面的主页增加试题界面如图4-2所示:图 4-2 增加试题界面主要功能实现程序:操作成功后,主要是通过服务器端的Servlet程序来实现页面的跳转功能。4.2.4待考页面该文件是用户登录在线考试系统后的待考页面,还可以实现成绩查询,选择“开始考试”后进入考试界面。该页面和用户登录之前的类似,通过特定的标签库做处理,在页面中相应的位置引入标签库,如果登录成功,再重定向到本页面,则显示相应的内容,从而达到登录的功能。实现该功能的主要程序代码如下:在学生登录时不同的学生登录时session变量将会记录他的用户名。并将接收到的变量值显示到页面中。还利用 JavaScript脚本,在页面中显示日期和时间,这样可以给用户提供观看时间的方便,以便能够更好的把握时间来进行考试。4.2.5考试页面该文件实现学生用户对自己的信息进行管理(修改考生信息、查询考试得分)的功能,界面如图5-4所示。该文件实现学生进行在线考试(自动评分)的功能,在学生提交卷子或者考试时间到系统将自动的给客观题进行评分。界面如图4-3所示:图4-3学生考试界面图该文件就是考试界面,对每个考生的考试时间进行监控,到结束时间后自动给出提示并交卷。教师可以根据不同的科目考试来设定相应的时间。自动交卷页面如图4-4所示:图4-4定时交卷页面4.2.6在线评分页面考生提交答卷以后,该文件就把考生的答案同题库中的正确答案进行比较,最后得出考生的得分。首先先打开数据库,再读取从“form”表单提交过来的答案信息,然后根据随机抽选题时所抽选的每道题的题号,然后在数据库中对学生所提交的答案进行比较,若与数据库中对应的题目答案相同则加分,否则本题将不加分,最后统计出总分。在这里主要来看一下是如何实现服务器端自动评分,如何将成绩和学号等信息记录起来的。部分实现代码如下所示:Connection con=DriverManager.getConnection(url, username,password);Statement sta = con.createStatement();String sql = select * from question;set = sta.executeQuery(sql);int score=0;while(set.next()for(Integer i=1;i=10;i+)String answer=request.getParameter(i.toString();String str=set.getString(anwer);if(str.equals(answer)if(request.getParameter(+(i*100).equals(set.getString(id)score+=10;request.getSession().setAttribute(score,+str);/把得分存入数据库Stringsql2=update userssetscore=+score+where name=+request.getSession().getAttribute(login)+; sta.executeUpdate(sql2);response.sendRedirect(score.jsp);先创建一个数据集对象,然后执行相应的SQL语句来查找数据库中的试题的记录, 然后与考生提交过来的答案信息进行比较,若考生答案与数据库中相应题号的答案相同,则把考生的得分加上本题的分值,否则不进行加分。在考生提交过来的答案中包含题号信息,在客户端中看到的题号是按顺序排列的,但这并不是数据库中对应的题号。真正的题号包含在隐藏域中,考生是看不到的。这样,考生交卷后,服务器端就可以根据考生的答案和隐藏域中对应的题号信息来进行评分了。最后计算出总成绩,并把成绩存放在数据库中,以便考生以后查看和教师对考生考试情况的统计。然后,通过重定向把考生本次得分的页面发给客户端,实现自动评卷的效果。4.2.7后台管理页面该文件实现的功能是管理员选择进行管理的项目,也就是管理主界面,可以进行考生的注册、管理以及对试题的增加与删除等管理界面如图4-5 所示:图4-5 管理员管理界面图4.2.8学生账号管理页面该文件实现对学生用户进行管理(修改考生信息)的功能,可以对学生的信息进行单个的修改或者是全部的修改。界面如图4-6所示:图4-6管理学生界面图结束语 采用基于Web技术的考试系统可以借助于遍布全球的因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性,有诸多优势:试卷可以根据题库中的内容即时生成,可避免考试前的压题而且可以采用大量标准化试题,从而使用计算机判卷,大大提高阅卷效率;还可以直接把成绩送到数据库中。因此,考试的公平性、答案的安全性可以得到有效的保证,给目前许多国际著名的计算机公司所举办的各种认证考试和各个高校的考试提供了一个平台设计。通过本次毕业设计,把自己以前所学的知识都运用到了一起得到了进一步的加深并通过参考文献以及网络上的搜索学习跟加深了自己的知识.有机的把自己以前所学习的知识更好的结合在一起来处理一些程序的设计。在实践的过程中,充分理解面向对象语言的思想及网络对我们的冲击,计算机在网络上的应用已经成为我们生活里不可或缺的辅助元素,而利用计算机科学与应用技术来解决生活中的实际问题是我们学习计算机的主要目的;没有计算机时我们也可以解决,但有了计算机、网络我们会更轻松的解决问题,还学习了一些课本上没有的知识。这次毕业设计不仅仅的巩固了自己以前学的知识很加深理解还自己遇到困难和坚信自己一定能克服。致谢首先感谢本人的导师马世霞老师,在马老师的指导和帮助下才完成了毕业设计和论文工作,马老师认真负责的工作态度,严谨治学的精神和深厚的理论水平都使本人受益匪浅,马老师无论在理论上还是在实践中,都给予了本人很大的帮助,对本人的毕业设计任务和论文书写提出了许多建设性建议,特别是在本人的课题遇到困难时,她给了本人极大的鼓励和帮助,在这里本人向她表示真诚的感谢!由于我的水平所限,加上设计时间仓促,而且对在线考试系统的认识不够全面,所以在设计时,难免出现一些漏洞,存在一些不恰当的地方,还恳请各位老师提出中肯的意见和建议并给予批评指正,以便今后进一步修改提高。感谢母校河南机电高等专科学校的辛勤培育之恩!还要衷心感谢计算机科学与技术系的全体老师三年来对本人的教诲,他们不仅使本人的知识、能力得到提高,更重要的是教会了本人怎样提高自己的自学能力,怎样去适应社会。愿母校明天更辉煌,全体老师身体健康、心想事成。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 任务书类


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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