版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于J2EE的考试系统设计与开发摘要在教务管理中,考试作为教学测评的一种最主要的手段,其传统的做法全部由手工完成,使得工作效率低下。如何让考试适应现代教育的特点,如何更好的为教学服务,就成了一个急需解决的问题。计算机网络考试系统以其特有的优势,成为解决问题的关键手段。本文阐述了传统的J2EE体系结构以及开发J2EEWeb项目的一般原则,从体系结构的角度详述了开发J2EEWeb应用时表示层、业务层和数据存取层的设计问题。论文所实现的基于J2EE的在线考试系统,采用JSP、Jetty等技术实现了试题管理、试卷管理、考试管理、学生考试、试卷评阅、成绩的统计与分析等功能。本考试系统分为四大模块:系统登录模块、系统管理模块、考生考试模块和教师管理模块。其中系统管理模块对系统用户、权限进行管理。考生考试模块的主要功能是实现学生在线考试、在线练习及成绩查询。教师管理模块主要功能是维护系统中的试题库的编辑、设置或生成试卷、批改试卷及成绩查询、考试管理、试卷分析,为系统最重要的模块。本文使用J2EE企业解决方案构建了B/S模式的企业软件系统,保证系统的健壮性和可扩充性。同时该系统用Oracle10gR2作为后台数据库,分析了传统考试系统的缺陷,采用了多种新的设计方案,满足了任意题量、任意数量班级同时考试的考试要求,真正地使教师从出题、监考、评改统计等等费时的工作中解脱出来,以更好地适应现代教育形势。本系统克服了传统考试的不足,让计算机参与到整个考试过程中来,实现无纸化考试,大大提高了考务工作效率,具有广泛的应用前景。关键词:Java;J2EE;考试系统;软件工程目录TOC\o"1-2"\h\z\u一、绪论 3(一)课题开发背景 3(二)国内外发展情况 3(三)论文主要工作 4(四)论文结构安排 4二、系统相关技术介绍 4(一)J2EE简介 4(二)JSP简介 5(三)考试系统开发环境简介 6(四)设计模式 6三、系统设计 6(一)需求分析 6(二)系统设计 8(三)数据库的设计 11四、系统的实现 16(一)系统整体功能模块说明 16(二)登录退出模块的功能实现 21(三)管理员管理模块的功能实现 23(四)监考老师管理模块的功能实现 24(五)考生管理模块的功能实现 25(六)科目管理模块的功能实现 26(七)题库管理模块的功能实现 27(八)试卷管理模块的功能实现 28(九)考生个人信息模块的功能实现 31(十)考试模块的功能实现 31(十一)考生考试记录模块的功能实现 35五、结论 35参考文献 37基于J2EE的考试系统设计与开发一、绪论(一)课题开发背景 随着信息技术和网络技术的迅速发展,教育信息化和网络化也将成为必然的趋势。作为教育评价和衡量学生能力的考试也正经历着无纸化和网络化的飞跃。网络的开放性和分布性的特点以及基于互联网的巨大计算能力使得考试突破了时间和空间的限制。基于网络技术的考试系统正成为人们的研究热点之一。随着Internet的发展,计算机的全面普及,学校的教学、教务管理、行政管理也一改传统的模式,借助现代计算机技术及因特网技术,努力朝着信息化建设的方向发展。教育的改革,给人们带来了更多的学习机会。随着学习形式灵活、学生分布广的成人教育及各种的认证培训考试教育的迅猛发展,考试的形式也变得更加多样化。比如,在线考试就已经成为广泛应用的一种考试形式,相应的,对在线考试系统的需求也越来越大[1]。(二)国内外发展情况1.国内研究情况在我国,计算机考试系统和题库的理论研究和实践应用起步比较晚。但发展也比较迅速,研究和开发活动比较活跃。北京师范大学、华北师范大学等高等院校都有教师进行教育测量理论应用于题库建设方面的研究。清华大学、北京师范大学等高校,也有教师在组织力量致力于实用考试系统的研究和开发工作。其中使用专用在线考试系统影响较大的考试有:1994年开始,国家教务组织的全国计算机等级考试;1996年,教育部考试中心举办的全国计算机应用技术证书考试(NationalApplideInformationTechnologyCerticate简称AIT);微软授权培训中心(MircrosoftAuthorizedTrainingCenter简称ATC)组织的认证考试等[2]。面向普通教师使用的题库系统也有“海北智能助教系统”和国家“九五”重点攻关项目“计算机辅助教学软件研究开发与应用”,“中小学课件的研究与开发”专题中的“通用题库生成管理系统”等。以上考试系统各自实现了试题的计算机管理,抽题成卷,无纸化考试,自动判卷,对考试结果进行统计分析等各项功能的一部分,但也都存在一定的问题和局限性[3]。总的来说,我国在线考试系统发展比较迅速,但总体水平不高,与发达国家相比在理论和实践上都存在一定差距。1.2.2国外研究情况国外,那些发达国家,基于计算机的考试蓬勃发展,对于题库建设的理论研究不断深入,实用考试系统层出不穷。早在1986年,美国心理协会出版了关于如何开发、使用计算机化考试以及解释考分的指南,成为了考试和软件开发者事实标准。投入使用的例子有,1992年采用远距离教育方式的美国学院(AmericanCollege)考试使用计算机进行测试;1993年美国教育考试中心(EraduadeRecordExamination简称ETS)考试,从1994年开始,美国护理证书考试完全在计算机上进行。目前,国外许多大型测验出版机构、地区教育主管部门和专业资格认证机构都以某种测量理论为指导建立题库、设计考试系统,并进行各项相关研究。除了这类行业专用的大型考试系统之外,供普通教师使用的通用考试系统软件也有相应的研究和产品。如英国QuestionMark公司出品的QuestionMark,就是一种基于项目反应理论的,课供普通教师使用的通用的考试系统。(三)论文主要工作本论文将以Java语言为开发背景,以B/S类软件工程为实施过程为标准,实现一套在线考试系统。本系统主要完成了题库管理、监考老师管理、考生管理、试卷管理、成绩管理等几个模块的设计和开发实现。(四)论文结构安排本文研究的主要内容如下:全文共分5章。第一章,主要是介绍系统概述,包括介绍了课题研究的背景、系统开发的意义与主要内容及组织框架。第二章,介绍系统相关技术介绍,包括J2EE架构分析、J2EE的特点及JSP简介、考试系统开发环境简介。第三章,介绍系统需求分析,包括了系统的主要功能和设计原则、系统结构设计、系统功能设计、系统数据库设计。第四章,介绍系统的实现,包括了系统整体功能模块说明、登录退出模块的功能实现、管理员管理模块的功能实现、监考老师管理模块的功能实现、考生管理模块、科目管理模块、题库管理模块、试卷管理模块、考生个人信息模块、考试模块、考生考试记录模块的功能实现。第五章,介绍结论与展望。二、系统相关技术介绍(一)J2EE简介J2EE开发框架:系统将采用开源框架Spring2.5.6作为应用基础,数据库层将采用Hibernate3.0进行操作。多层架构设计:系统采用SpringMVC架构为基础,利用MVC架构将系统进行多层分离编码,提高系统模块间的灵活性及减少耦合度。本系统除了MVC层之外,还将对数据持久层进行独立成一层。系统的页面层将采用JSP及JSTL进行展示,同时配合CSS样式表,Javascript进行效果处理。URL访问路径将交由控制层处理,每个请求的事务都将在控制层时行调用业务逻辑层服务[3]。而业务逻辑层可调用不同的数据持久层服务。工作流程如图2-1所示:图2-1四层架构设计流程视图层:JSP页面为主。控制层:XxxController类为主,并实现Controller注解。业务逻辑层:XxxServices类为主,并实现Service注解。数据操作层:XxxDao类为主,并实现Service注解,并继承于HibernateGenericDao类和实现EntityDao接口。J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制。它主要有以下方面的优点:1.保留现存的IT资产由于基于J2EE平台的产品几乎能够在任何操作系统和硬件配置上运行,因此J2EE架构可以充分利用用户原有的投资,保留现有的操作系统和硬件[4]。2.高效的开发J2EE允许公司把那些通用的、很繁琐的服务端任务交给中间供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。3.支持异构环境J2EE能够开发部署在异构环境中的可移植程序。基于J2EE的应用程序不依赖任何特定的操作系统、中间件和硬件,因此,设计合理的基于J2EE的程序只需开发一次就可部署到各种平台。这在典型的异构企业计算环境中是十分关键的[5]。(二)JSP简介JSP是JAVA的页面开发的常用方法,JSP是在HTML页面中通过嵌入JSP的标签进行调用JAVA的语法。JSP在J2EE容器中首次被请求会被编译为一个对应的Servlet语法的Java文件,并生成对应的CLASS文件。本系统中的JSP只使用到一些基本语法,常用的数据取值都将使用JSTL组件的EL表达式以及自定义标签Tags表示。系统的JSP开发遵循JSP2.0规范,可保证兼容于任何标准的J2EE容器。JSP技术在以下的几个方面加速了动态WEB页面开发:(1)内容的生成和显示进行分离。使用JSP技术,WEB页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面,使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识中,并且捆绑在小脚本中,所有的脚本在服务端运行。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容,并且将结果以HTML页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于的WEB浏览器的完全可用性[6]。(2)强调可重用的组件。绝大多数JSP页面依赖于可重用的、跨平台的组件来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。(3)采用标识简化页面开发。JavaServerPage技术封装了许多功能,这些功能是与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问实例化JavaBeans组件,设置或者检索组件属性。由于JSP页面的内置脚本语文是基于Java编程语言的,而且所有的JSP页面都被编译成JavaServlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。作为java平台的一部分,JSP拥有java编程语言“一次编写,处处运行”的特点[7]。(三)考试系统开发环境简介1.系统平台:WindowsXP选择WindowsXP作为系统平台,是因为它的应用非常普遍而且系统的稳定性和兼容性都不错,使得考试系统的安装非常简单、快捷,为将来的推广和应用打下良好的基础。2.Web服务器平台开发成功的J2EE项目,将要部署在基于J2EE规范的WEB服务器上才能访问,常见的Web服务器有:Weblogic、WebShpere、Jboss、Tomcat、Jetty等等。本应用开发环境使用的是Jetty,可部署运行于以上几种服务器内。(四)设计模式在设计过程中,使用到了UML知识进行用例分析、领域分析、部署方案分析等等,并在编码中将使用到多种设计模式来提高系统的灵活性和稳定性。用到的设计模式有以下几种:工厂模式、单例模式、State模式等等。系统设计中还充分使用到了抽象、多态、继承、接口等面向对象的特性。三、系统设计(一)需求分析1.功能需求本系统的用户可分为管理员和普通用户两类。本系统共分成两个界面:一个界面用于管理员登录,主要负责进行基本资料、题库、试卷、成绩的管理以及查询等;另外一个界面用于普通用户登录,主要负责在线考试、查询以往考试成绩留言和在线交流等。从总体上考虑,系统应该实现下列功能:对管理员来说,包括试卷管理、题库管理、成绩管理。试卷管理:管理员可以从课程,各种题型的数里等方面对某份试卷提出一定的要求生成试卷规则。同时,管理员还可以对库中已有的试卷进行修改和删除,添加新试卷等。题库管理:管理员可以对题库中的试题进行三种基本操作:添加新的考题、删除旧有考题、修改原有考题,其中试题类型包括判断题、填空题、选择题;对于每种类型的试题,教师可以设置题干、答案等属性。图3-1系统总体功能图2.非功能性需求考试系统以为考生提供考卷为主,由此需要题库的支持,题库将由系统管理员录入及维护,题库将分不同科目类型(语文、数学)以及出题类型(单选、多选),并在题库中给出正确答案。当要进行一场某类型的考试时(如语文),由系统管理员进行确定试卷的考试时间以及试题范围(可以从题库中选择该类型下的部分题目(必须大于等于考试的题目数)或全部题目为一次考试的考试范围)。并将选择准备考生的人员名单,不在名单内的将无法进入系统参加考试,同时确认考试的开始时间、限制登录时间范围、交卷的时间范围,以及监考老师。监考老师将由主考单位派出到考试地点进行监考,以进行有效的督察和监控考试效果,防止作弊,同时每一份考试需要提前30分钟内完成监考老师的授权登录,否则不充许进行考试[8]。考生所分配的试题将是从题库中随机抽取的,并且每位考生所分配的试题顺序将不同,以防止考生抄袭,考生需要提前登录系统,完成监考老师的授权,然后进入试卷模块等待准考时间到来,当到了规定的准考时间后,充许考生进入试卷签卷,在规定时间内,不充提前交卷,若到了考试结束时间,系统将自动交卷。每一题都有一个标记位,可以用来快速复查。交卷后系统将自动给出分数并保存整个考试记录。出于安全考虑,考试系统打开后将全屏,并且将屏蔽系统热键,直到考试结束方可退出全屏[9]。(二)系统设计1.系统功能结构设计在线考试系统总体应用拓扑图如3-1所示,功能结构设计如图3-2所示,系统的体系架构图如图3-3所示。图3-1应用系统拓扑图图3-2在线考试系统功能结构图根据图3-2所示可知,在线考试系统分为安全框架、系统管理、考生管理、题库管理、试卷管理、在线考试六个模块。(1)安全框架模块包括管理员、监考老师与考生模块,每个模块分别有登陆系统与退出登陆模块。(2)系统管理模块包括用户管理与监考老师管理模块。(3)考生管理模块包括考生管理与添加考生,其中考生管理包括禁用与启用。(4)题库管理模块包括科目管理与题库管理模块。科目管理包括添加科目,题库管理包括添加题库。(5)试卷管理模块包括试卷管理与添加试卷,其中试卷管理包括已考试卷与待考试卷模块。(6)在线考试模块包括考试信息、考试记录、个人信息模块,其中考试信息包括生成试题,个人信息包括修改密码。图3-3体系结构图2.系统流程结构设计考试系统管理员功能模块:安全验证模块:对管理员和考生进行分开身份验证。科目管理:考试科目管理,可添加新的科目。已经存在的科目只充许禁用,不充许删除。题库管理:题库分不同的科目,并且每一试题都属于一个科目,试题分单选或多选两种,可录入多个备选记录。并且每题都将内置正确答案。试题可禁用和修改,但不充许删除。修改试题,不会更新已经产生的试题和考过的试题。修改的试题只有再次发布试卷时才会显示更新后的内容[10]。监考老师管理:监考老师可添加及查看某位老师的所有监考记录。考生管理:可添加考生信息,以及查看某一位考生的考试记录和成绩。试卷管理:当发布一次考试信息时,将生成一份试卷题库,并指定一批生考名单和一名监考老师。选择的试题数量将大于等于考试总数,当考生通过监考老师的授权后,将从该试卷库中进行随机抽取试题生成试卷。成绩管理:每一次考试的成绩将记录在案,但不公布试题和正确答案。系统用户管理:修改当前管理员的帐户密码。考试系统考生登录功能模块:考试信息:当考生登录系统后,可看到自己可以参加的考试列表。考试记录:当前考生所有参国过的考试记录,以及成绩查看。个人信息:修改个人的信息和密码。考试系统考试流程图:图3-4考试系统考试流程图(三)数据库的设计1.数据库总架构图图3-5数据库总架构图2.数据库需求分析针对一般考试系统的需求,数据库设计如下所示的数据项和数据结构:①系统管理用户,包括的数据项有:用户名、密码、姓名、最后一次登录时间、邮箱地址、停用标志、添加时间。②监考老师,包括的数据项有:监考老师账户、监考老师姓名、监考老师密码、监考老师性别、监考老师工作地址、监考老师电话、监考老师邮箱地址、添加时间、添加用户、最后更新时间、启用状态。③考生,包括的数据项有:考生编号、考生姓名、考生密码、考生邮箱地址、生身份证号、考生性别、考生通讯地址、考生邮政编码、考生联系电话、考生联系手机、添加时间、最后一次登录IP、最后登录时间。④科目,包括的数据项有:科目编码、科目名称、添加时间、添加用户、最后修改时间。⑤试题题库,包括的数据项有:试题编码、科目编码、试题内容、试题类型、启用状态、添加时间、添加用户、最后修改时间。⑥试题选择项,包括的数据项有:试题编码、选项值、是否正确答案,排序⑦试卷,包括的数据项有:试卷编号、科目编码、试卷名称、试题总数、考试试题数、多选分值计算方式、合格成绩、添加时间、考生数量、开考时间、结束时间、考试时长、考试状态。⑧考试监考老师,包括的数据项有:试卷编号、监考老师账户。⑨考试考生,包括的数据项有:试卷编号、考生编号、成绩、考试状态。⑩考生试卷,包括的数据项有:考生编号、试卷编号、试题编码、排序、标记、是否答题、答题时间。3.数据库E-R图概念设计中自顶向下的实体分析方法,即常用的实体联系模型(简称E-R模型),对具体数据进行抽象加工,将实体集合抽象成实体类型。用实体间联系反映现实世界事物间的内在联系。E-R模型是建立概念性数据模型的有力工具。通过对在线考试内容和过程的分析,本系统应设计的实体和属性如下:试题(题目编号、题型、题目主干、难度系数、选项、答案、分值、章节)试卷(试卷编号、试卷标题、课程编号、可用状态)试卷详细信息(试卷编号、题目编号、题目类型、分值)用户(用户名、用户姓名、密码、权限)(1)实体之间关系E-R图如图3.6。用考生、试卷两个实体及其属性和联系构建E-R图。考生的属性:教师、课程;试卷的属性:试题。图3.6实体间关系E-R(2)试题实体E-R图如图3.7。试题实体属性包括题目内容、题目类型、试题号、分值、正确答案、选项。图3.7试题实体属性E-R图(3)用户实体E-R图如图3.8。用户实体属性包括用户编号、用户名、访问权限、密码。图3.8用户实体E-R图(4)成绩实体E-R图如图3.9。成绩单实体属性包括考试时间、成绩、准考证号、课程号。图3.9成绩单实体E-R(5)试卷实体E-R图如3.10。试卷实体属性包括试卷编号、试卷标题、课程编号、可用状态。图3.10试卷实体E-R4.数据库逻辑表设计本数据库中共包含四张管理表,包括考试系统用户信息表、考试成绩信息表、考试系统考试科目信息表、考试系统试卷信息表,具体结构如下:(1)考试系统用户信息表存放相关用户信息,其表结构如表3-1所示。表3-1users表列名数据类型长度是否为空注释userrIdIntNo用户编号,自动编号,主键userNameVarchar16No用户名userPwdVarchar8No密码userPowerVarchar10No用户权限(管理员与考生)(2)考试成绩信息表用来存入考生相关考试成绩信息,其表结构如表3-2所示。表3-2score表列名数据类型长度是否为空注释userrIdIntNoID,自动编号,主键userIdInt5No考生编号paperIdcharNo试卷编号scoreIntNo分数examTimeDatatimeNo考试时间(3)考试系统考试科目信息表存入相关考试信息科目的基本信息,设计的表结构如表3-3所示。表3-3course表列名数据类型长度是否为空注释userrIdVarchar8No课程编号,主键CourseNameVarchar24No课程号joinTimeDatetimeYes加入时间(4)考试系统试卷信息表存入相关试卷的的基本信息,设计的表结构如表3-4所示。表3-4paper表列名数据类型长度是否为空注释paperIdIntNoID,自动编号,主键CourseIdVarchar8No课程编号paperNameVarchar24No试卷标题questionNumIntNo试卷包含题目数量judgeNumIntNo判断题数量optionNumIntNo选择题数量totalMarkIntNo试卷满分judgeValueIntNo判断题分值optionValueIntNo选择题分值exanTineIntNo考试时间(单位:分)四、系统的实现本章为系统的实现。给出了各模块的功能实现分析。分析了系统整体功能模块说明、登录退出模块的功能实现、管理员管理模块的功能实现、监考老师管理模块的功能实现、考生管理模块的功能实现、科目管理模块的功能实现、题库管理模块的功能实现、试卷管理模块的功能实现、考生个人信息模块的功能实现、考试模块的功能实现、考生考试记录模块的功能实现。(一)系统整体功能模块说明1.系统缓存设计系统中大量使用到一些常量,我们将之抽象出来,做成字典表,放在缓存中。接口的实现除了运用了单例模式还使用到了工厂模式。通过对Java中的继承、多态特性的利用,很方便地提供多种不同缓存的实现。采用接口设计,将系统常用字典和系统科目数据进行缓存。该缓存除了供系统业务处理时使用外,还将供自定义标签TAG使用。缓存将跟随系统一启动便进行加载,在系统运行过程中可以通过接口提供的update()方法进行更新缓存。在系统启动时,系统将根据缓存接口类查找系统中所有注册的Beans,只要是继承于该缓存接口的,就运行run()方法。缓存加载初始化实现代码:packagelin.sun.ksxt.cache;importjavax.servlet.ServletContextEvent;importjavax.servlet.ServletContextListener;importorg.apache.log4j.Logger;importorg.springframework.web.context.WebApplicationContext;importorg.springframework.web.context.support.WebApplicationContextUtils;/***Web容器启动时加载的方法。系统一启动会自动运行contextInitialized方法**authorSunLinlinsun*createdate2010-12-17上午10:08:03*version2.0.0*/publicclassSystemStartLoadimplementsServletContextListener{ Loggerlogger=Logger.getLogger(this.getClass()); /** *Web容器结束时执行的方法 */ publicvoidcontextDestroyed(ServletContextEventarg0){ if(logger.isInfoEnabled()) ("-->contextDestroyed(ServletContextEventarg0)"); } /** *WEB容器启动时执行的方法 */ publicsynchronizedvoidcontextInitialized(ServletContextEventarg0){ if(this.logger.isInfoEnabled()) ("启动-->contextInitialized(ServletContextEvent)"); WebApplicationContextwac=WebApplicationContextUtils .getWebApplicationContext(arg0.getServletContext()); String[]at=wac.getBeanNamesForType(SystemCacheService.class); if(at!=null&&at.length>0){ for(Stringbean:at){ SystemCacheServicescs=(SystemCacheService)wac.getBean(bean); if(logger.isInfoEnabled()) ("加载启动项:"+scs.getCacheName()); scs.run(); } } }}同时在web.xml里添加配置项:<listener> <listener-class>lin.sun.ksxt.cache.SystemStartLoad</listener-class></listener>2.系统公共模块自定义标签系统中大量使用到一些字典表数据的显示,在此将其处理为自定义标签。以方便页面中调用。自定义select标签。TypeSelectTag类是实现针对字典表的数据处理。JsonSelectTag类是实现针对非字典表的JSON格式的数据处理。两个类只实现了业务数据处理的模块,都继承于AbstractSelectTag抽象类。在抽象类中完成了selectHTML标签的组装的实现。而数据项的填充放在抽象方法中去供子类实现。图4-2自定义标签图其它自定义标签ShowDateStrTag类是一个日期时间格式化输入标签的实现。SubStringTag类是一个字符串截取类。ShowTag类是针对字典表中的数据显示类,可根据字典项编码显示成对应的名称。图4-3自定义标签图3.系统Job的实现发布的试卷,开始考试和结束考试的状态是由系统后台的JOB完成的。采用Spring的ScheduledTimerTask的接口,进行Job类开发和实现。该Job采用单例模式,由单独的一个线在后台对所有试卷的考试状态进行监控和变更。每一分钟运行一次。图4-4系统JOB实现图4.系统公共类及公共方法BaseController类是所有Controller层类的父类,主要是提供日志记录接口,和输入接口。图4-5日志记录接口图系统中各控制层实现类都继承于BaseController类。图4-6各控制层实现类图BaseService业务逻辑处理类,该类主要提供日志操作接口。图4-7业务逻辑处理类图(二)登录退出模块的功能实现为了安全保障,在线考试系统的管理员及监考老师登录页面与考生登录界面不同,登录地址也将分开。系统将分别根据管理员和考生两个不同的地址进行记录Session会话,管理员的所有访问地址都将以“/control/”开头,考生的所有访问地址都将以“/kaoshi/”开头。管理员登录系统后,系统将保存管理的身份信息到Session中去,Key为“admin_session”,值为当前用户的对象。考生登录系统后,系统将保存考生的身份信息到Session中去,Key为“kaoshi_session”,值为当前考生的用户对象。系统将采用J2EE中的Filter进行身份验证和URL权限过滤。1.管理员登录登录地址及页面:图4-8登录界面图2.考生登录考生登录地址及页面(如图4-11所示):图4-9考生登录页面考生登录成功后,浏览器将进入全屏界面。点击“退出登录”,服务器清除当前会话Session内容,并显示考生退出系统提示(如图4-12所示);安全起见,系统将建议关闭当前浏览器窗口。图4-10退出消息提示(三)管理员管理模块的功能实现1.管理员个人信息管理用例图4-11个人信息管理图2.管理员个人信息编辑修改系统用户的个人信息,提交时会进行登录用户名的唯一性检查,如果系统中有相同的登录用户名且不为当前账户的,无法保存更改,并返回提示信息。图4-12个人信息编辑图3.管理员修改密码系统管理员登录后可进行当前用户的密码修改!在输入正确的旧密码后,新登录密码与确认新密码一致,可提交更新当前用户的登录密码。图4-13管理员修改密码(四)监考老师管理模块的功能实现1.监考老师管理用例图4-14监考老师管理用例图2.监考老师列表监考老师管理页面可以查询所有的监考老师信息,并且可以进行禁用操作。可以通过多个过滤条件进行筛选!3.添加监考老师填写要添加的监考老师信息,提交后系统会对监考老师的登录账号进行唯一性检查,如果已经存在同样的账号,将无法保存并返回提示信息。图4-15添加监考老师图4.启用禁用监考老师在监考老师列表中,点击每行最后一列的“禁用”或“启用”按钮,可对当前行的监考老师进行状态控制,被禁用的监考老师将无法进行授权考生考试操作。(五)考生管理模块的功能实现1.考生管理用例图4-16考生管理用例图2.考生列表考生列表中可以查询多种组合条件的考生信息,可对列表中的考生账户进行编辑、查查详细信息、启用已经禁用的考生账户、禁用已经启用的考生账户。3.添加考生 为系统添加考生信息,考生唯一标识的编号将在保存前系统自动生成。图4-17添加考生图4.编辑考生信息从考生管理列表中编辑指定的考生信息,可以进行考生除考生编号的其它信息的修改,如果不进行密码修改,则将密码修改项留空。(六)科目管理模块的功能实现1.科目管理用例图4-18科目管理用例图2.科目列表系统的所有试卷都将与科目关联,科目管理列表将显示系统所有科目信息,并可以进行查询过滤、新增、编辑修改、删除操作。3.添加科目填写好科目名称后,点击“提交”按钮进行保存(图4-21),在保存前,系统会对科目名称进行检查,如果系统中已经存在同样的科目名称,则不进行保存,并提示该科目名称已经存在。图4-19添加科目图4.废除科目在科目列表页面,点击每行后面的“删除”按钮,即可将当前行科目删除!5.编辑科目在科目列表页面,点击每行后面的“删除”按钮,即可进入科目修改编辑页面。编辑提交时,会进行科目名称校验,如果科目名称已经存在会进行提醒并无法提交保存。图4-20编辑科目图(七)题库管理模块的功能实现1.题库管理用例图4-21题库管理用例图2.题库列表系统所有试卷都依赖于题库的支持,题库做为系统考试的资源中心,可以在题库管理页面进行查询、添加、删除、编辑试题。已经发布过的试卷中的试题,将被复制到试卷表中去,对于题库的修改,不会影响到已经发布的试卷试题信息。3.新建试题添加试题功能,试题在保存时将生成唯一的身份编码,试题的答题类型分多种(单选题或多选题),单选题的答案只能选择一项做为正确答案,在下面的答题选项中,是否答案为单选框(radio),若答题类型选择为“多选师”时,在下面的答题选项中,是否答案为多选框(checkbox)。图4-22新建试题图4.编辑试题对于试题库中的试题可以进行修改,提交后保存更新到数据库中,但不会更新发布的试卷中选择了些题的信息,发布的试卷中该题的信息仍旧是选择时的内容和正确答案。图4-23编辑试题图5.删除试题在题库管理列表中,点击每行后面的“删除”链接,好即可将当前行的试题删除,但不会影响已经发布的试题信息。(八)试卷管理模块的功能实现1.试卷管理用例图4-24试卷管理用例图2.新建试卷发布一次考试有两个步骤,首先需要新建试卷,点击“新建试卷”,进入到第一步试卷常规项填写,填写完毕后,点击“下一步”将进入到监考老师(如图4-27)、试题(如图4-28)、考生的选择页面。选择后进行“提交”保存。试卷发布成功后将进入详细页面。图4-25选择监考老师图4-26选择试题4.考试记录每份试卷考完后都可以在考试记录中查看。图4-27考试记录(九)考生个人信息模块的功能实现1.考生个人信息用例图4-28考生个人信息用例2.考生修改密码考生可以自行修改登录密码,进入修改密码页面,需要输入正确的旧密码,才能重设新密码,重复新密码要与新密码一致。提交后,系统将验证密码是否正确,若不正确,无法修改,若旧密码正确,考生登录密码将被更新,密码在数据库中将以MD5加密后的形式存在。3.考生编辑个人信息考生用户可修改自己的个人信息,完成修改后,点击“提交”按钮系统将进行必填项验证(凡编辑项后面带红色“*”的,表示该项不能为空),没有错误,将更新数据库中的考生信息。(十)考试模块的功能实现1.考生考试用例图4-29考生考试用例2.考试信息进入考试信息栏目,将看到根据开考时间倒排序的所有与当前考生有关的考试信息。可通过考试状态进行不同的操作。考试状态有以下几种:已经考过:考试已经结束,可以查看成绩。正在考试:考生进入考卷,并且未到结束时间,考生也未交卷,如掉线,考生点击操作“继续考试”,重新进入系统继续答题,之前的答题结果不会丢失。未开考:表示还未进行考试的试卷,在开考前15分钟可以进入考试,由监考老师授权后,等待到开考时间进入考试界面进行答卷。超过开考时间15分钟,将无法授权考试,考试状态将变成缺考,成绩为0分。缺考:表示在开考时间前15分钟以及开考后15分钟,考生仍未进行授权考试,造成缺考,考生将无法登录考试。3.考试授权进入考试前,需要对考试试卷进行监考老师授权验证。该授权只充许在开考时间前30分钟及开考时间后20分钟内进行。不在该时间段内,将出现提示栏。在合法的时间内,将会出现监考老师登录的界面。监考老师登录自己的系统账号通过验证后,系统才开始为当前考生分配试卷,试卷的题库范围取自该试卷出题时所划分的范围,并进行随机排序,生成的考生试卷将存于单独的表中。在考试过程中,考生未结束考试并且考试结束时间未到时,若系统掉线,考生可再次登陆系统,进入试卷继续考试,此时,已经经监考老师授权后的试卷,不需要再次授权,点击超链可直接进入试卷页面。当监考老师授权通过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基于二零二四年度战略的IT项目管理外包合同
- 全新2024年度农产品交易居间合作合同3篇
- 2024年度网络技术服务与合作协议2篇
- 2024版城市轨道交通砂石料采购合同3篇
- 孕期会阴疼痛的临床护理
- 2024年度商砼车运输责任界定协议2篇
- 二零二四年度国际工程技术咨询服务合同2篇
- 2024年度二手按揭购房合同(个人与企业)2篇
- 艺术学探索之旅
- 原发性腹膜后肿瘤的临床护理
- 国家开放大学《人文英语3》章节测试参考答案
- 降低阴式分娩产后出血发生率PDCA
- 七年级上册《Module 4 Healthy food》课件
- 音乐艺术概论智慧树知到期末考试答案2024年
- 2024年国家工作人员学法考法知识考试题库500题(含答案)
- 基于PLC的茶叶揉捻机自动控制系统的研究
- 消防设施维保服务投标方案(技术方案)
- 交通信号灯系统设计毕业设计
- 产品召回制度
- 2024图解数据分类分级规则
- 辅警业务培训课件
评论
0/150
提交评论