基于BS结构的在线考试系统.doc_第1页
基于BS结构的在线考试系统.doc_第2页
基于BS结构的在线考试系统.doc_第3页
基于BS结构的在线考试系统.doc_第4页
基于BS结构的在线考试系统.doc_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要:随着计算机的普及与网络化的广泛应用。21世纪教育网络化已成为必然趋势。为了适应教育的网络化,作为其重要组成部分的考试的网络化也成为了一个热门的研究课题。网上考试系统是以组织客观、公正、科学合理为目的的标准化考试系统。本系统是在基于J2EE标准的基础上设计的一个网上考试系统。本系统采用B/S结构,即采用浏览器-应用服务器-数据库服务器三层结构。在实现的过程中引入了J2EE的体系结构,借助JSP的强大的功能和跨平台的能力,使用了javabean+struts构架技术,通过基于WEB服务访问纯WEB页面,实现组卷与考试等各项相关的功能.系统界面整齐、美观。操作简单、方便。系统的数据库平台采用的是性价比较高的mysql数据库。使用JDBC接口技术,它由一组用Java编程语言编写的类和接口组成。 JDBC为数据库开发人员提供了一个标准的API,使他们能够用纯Java API来编写数据库应用程序。关键词:jsp B/S模式 网上考试目 录第1章 绪论11.1 网络考试系统的发展概况11.2 网络考试系统的研究意义11.3 课题来源及研究目标2第2章 开发环境32.1 系统技术支持32.1.1 C/S模式32.1.2 B/S模式32.1.3 采用B/S的优点32.1.4 J2EE平台42.2 JSP技术42.2.1 JSP的特点42.2.2 JSP与ASP的区别52.2.3 JSP的工作原理62.2.4 JDBC连接技术62.2.5 JavaBeans技术72.3 Tomcat介绍82.4 MySQL简介82.5 MVC简介92.6考试系统开发环境102.6.1 客户端102.6.2 应用服务器102.6.3 系统开发工具102.6.4 设备11第3章 系统需求分析及实现123.1 网上考试系统的分析123.11 网上考试系统的特点123.12 网上考试系统的功能13第4章 系统总体设计144.1 系统模块功能介绍144.1.1 本系统需要完成的功能模块144.2 试卷管理模块设计174.2.1 出卷系统总体设计174.3 功能实现194.3.1 单选题页面代码设计194.3.2 逻辑设计204.3.3 数据库操作204.4 试卷添加204.4.1 页面代码设计204.1.2 逻辑处理204.1.3 数据库操作204.5 数据库需求分析214.6 数据库连接池配置25第5章 在线考试系统前台设计285.1 在线考试系统前台模块设计285.1.1 登录模块的设计285.1.2 考试项目模块设计285.1.3 参加考试模块设计285.1.4 考卷成绩查询模块设计295.1.5 考生个人信息维护模块设计305.2 考务管理模块设计305.2.1 在线监控管理模块设计305.2.2 考卷评分模块设计315.2.3 考试分析管理模块设计33第6章 系统说明及测试346.1 系统的运行环境346.2 用户操作346.3 测试346.3.1 测试目的346.3.2 测试过程356.4 系统测试及结果分析356.4.1 系统安全性分析356.4.2 系统稳定性分析356.5 本系统的特色35结束语37致谢38参考文献39Abstract 4040第1章 绪论1.1 网络考试系统的发展概况在信息爆炸的时代,传统教学面临着诸多挑战。现代远程教学是随着计算机网络技术和多媒体技术的发展而产生的一种新型的教学形式,它又称网上教育,是指以网络技术为依托,采用远程交互式多媒体现代化教学手段,实现跨越时间和空间的教育传递。它与传统教育的不同之处在于,人们可以在计算机网络环境下,不受时间和空间的限制,随时、随地完成双向交互式的教学活动,共享优秀的教学资源。使用网上考试系统,教师平时可以有效地收集试题并保存到试题库中,考试时的出卷将变得较为轻松,甚至可以完全由计算机自动进行;也不用为考场秩序混乱伤脑筋;烦琐的评卷工作将有一半甚至全部是交给计算机去做,避免过多的感情分;计算机还能帮助教师分析出教学的薄弱环节等等。当然,利用计算机进行考试并不是一件容易的事情。首先,由于人们长期习惯于目前的人工考试方式,如果利用计算机进行考试,就必须考虑实施中很多需要解决的具体问题。其次,利用计算机进行考试有一定的局限性,特别是考试题型受到限制。虽然计算机可以很好地完成客观题的考试,但对于主观题,由于它的答题特点,目前还不能很好地完成其自动阅卷工作。再次,计算机考试需要相应的硬件投资,比如添置计算机终端,铺设局域网络等,这些都需要大笔的资金投入,这也会在一定程度上影响计算机考试的普及。此外,由于文字输入速度的快慢是因人而异的,而这又会直接影响到答卷时间和答卷质量,对考试的公平性会构成一定的影响,如果添置手写输入工具和软件,又会增大投资,并且由于现在手写输入工具的限制,还很难辨别一些潦草的字迹,因此这方面的问题也是很值得斟酌的。尽管利用计算机进行考试还存在着种种限制,但是传统的人工考试方式所带来的工作量实在太大,严重影响了教师的工作效率,计算机信息技术和人工智能技术的不断发展,考试的条件也将日趋成熟。因此,其能尽快在各种考试中发挥作用。也影响了整个教育事业的发展。而且随着上述的种种限制将逐步得到解决,我们十分有必要研究一下计算机考试系统的建设。1.2 网络考试系统的研究意义我国是一个发展中国家,幅员辽阔,人口压力巨大,人均占有的教育资源非常有限,加之各个地区发展极不平衡,在教育经费投入紧张,师资缺乏的情况下,在全国范围内,如果能够通过远程技术途径提供教育资源,培训师资队伍,并且为不定期学习培训的人们提供辅导与帮助,不仅可以缩短师资培训周期,而且可以使学习者更快地获得学习资源,提高学习效率。发展网上教育,可以使我国的教育建设提高到更高的水平上,迅速缩小与发达国家的差距,从整体上提高国民的素质。我国现有的教育体制是以各级各类学校的正规教育为主,电大和函授形式的成人教育与继续教育为辅。这种教育体制有利于系统知识的传授和人材培养的规范化,有其合理性的一面。其主要弊病是投资庞大、效益不高,且受场地、空间、时间的严格限制,缺乏灵活性,不能适应终身教育、全民教育的需求。目前在我国各级各类学校中占统治地位的教学模式是以教师为中心,主要靠老师讲、学生听的班级授课模式,这种教学模式的优点是有利于教师起主导作用,便于教师组织课堂教学。其最大的缺点是,作为认知主体的学生在教学工程中自始至终处于受灌输的被动地位,其主动性、积极性难以发挥,很不利于培养学生的发散性思维、批判性思维和创造性思维,即不利于创新能力的形成和创造型人材的成长。由于在班级授课的条件下学生缺乏主动探索、主动发现的学习环境,并且与社会上、国际上的信息资源完全隔绝,因而在传统教学模式下学生的这种信息获取、分析与加工能力更加难以培养。所以说我国目前现有的教育体制与教学模式很难满足信息社会对教育的要求。作为一种新的教育模式,远程教育对于克服我国现有体制的这些弊端,加速我国教育事业的发展具有特殊的意义。远程教育的方式大多是交互性很强的网上教学,它以网络为依托,媒体教学手段,使得人们可以在计算机网络环境下,采用远程交互来完成交互式教学活动,共享优秀的教学资源,会均等。但是,目前作为教学活动的重要环节一考试,基本上都是采用传统的方式,在这种方式下,组织一次完整的考试至少要经历四个步骤:人工出卷、考生考试、人工阅卷、成绩统计。显然,随着各种考试类型的不断增加和考试要求的不断提高,教师到处找试题、拼试卷、印刷、考试、评分、算成绩,整个过程工作量很大,效率不高,教师的工作量将越来越大;而且,当考生数量比较大时,对考生的考试成绩进行统计将是一件十分烦琐且容易出错的事情;再者,一次考试的反馈能力弱,试题选择随意性大,全凭教师的主观意愿来评定一张试卷难度的高低,对成绩的分析停留在平均分、及格率等表面层次上,难以统计出学生对各个知识点的掌握程度;成绩公布之前学生为查看成绩给教师和教务部门找的麻烦也不少,人情分很难避免出现。可以说,传统的考试方式己经不能适应现代考试的需要。随着计算机网络技术与数据库技术的发展,网上考试系统因其公正性、安全性、准确性、灵活性、随机性、及时性以及方便性等特点,己成为目前国际上普遍采用的一种考试和认证方式。随着技术的不断发展与完善,网上考试正在成为网上教学系统和网络办公系统不可或缺的重要组成部分。现代网上考试系统具有了以下的一些特点:(1) 便考生考试,无地域差异考生可以选择就近的学校参加考试;而且在同一考场可以进行不同种类的考试.(2) 提高考试的透明度:考生考试完毕后,可以上网得到考试成绩和分析报告,其目的是增加考试的公开度和透明度。(3) 随时更新考题:题库是随着时间的变化不断更新的,因此,每门考试的考试时间、考试形式都会做出相应的调整。通过计算机网络和软件,可以随时将更新的考题反映到各个考试中,学生可以考到最新学到的知识。(4) 安全保密性:通过使用计算机加密手段和对题库进行的科学管理。在考试结束时,屏幕上的考题将自动消失,只剩下考生的成绩,提高了考题的保密性。1.3 课题来源及研究目标为了使考试不受地域的局限,我设计了这个基于Web技术的网络考试系统。该考试系统可以借助于遍布全球的因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,及时发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。试题内容放在服务器上,考生通过姓名、准考证号码和口令进行登录,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的保证。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。在线考试系统主要包括的内容有:“在线考试前台管理子系统”、“在线考试后台管理子系统”两个大模块。实现用web浏览器进行学生在线答题;教师在线组卷,在线答疑。实现远程教学的目的。第2章 开发环境2.1系统技术支持本系统是基于JSP技术和JavaBean组件技术的三层分布式结构(即浏览器/服务器模式,B/S)的Web应用系统。JSP技术和JavaBean组件技术、JDBC数据库访问技术都是J2EE的基本技术,本章将对c/s、b/s、J2EE平台、 JSP技术、jdbc连接技术、JavaBean组件技术及其相关技术做一个介绍,本系统还用到了tomcat平台和mysql数据库。2.1.1 C/S模式客户机/服务器系统的基本思想是在一个统一的地方集中存放信息资源。一般将数据集中保存在某个数据库中,根据其他人或者机器的请求将信息投递给对方,客户机/服务器系统的一个关键在于信息是“集中存放”的,所以我们能方便地更改信息,然后将修改过的信息发放给信息的消费者。将各种元素集中到一起,信息仓库、用于投递信息的软件以及信息及软件所在的那台机器,它们联合起来便叫作“服务器”;而对那些驻留在远程机器上的软件,它们需要与服务器通信,取回信息,进行适当的处理,然后在远程机器上显示出来,这些就叫作“客户”2.1.2 B/S模式B/S结构,即Browser/Server(浏览器/服务器)结构,是随着internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript, JavaScript0.)和ActiveX技术,用通用浏览器实现了原来需要复杂专用软件才能实现的强大功能。并节约了开发成本,是一种全新的软件系统构造技术。随着Windows系统将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨大的进步。2.1.3 采用B/S的优点(1)B/S建立在广域网之上C/S一般建立在专用的网络上的小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务;B/S建立在广域网之上,不必是专门的网络硬件环境,利于电话上网,租用设备,信息自己管理。(2)B/S是由构件组成,方便构件个别的更换C/S系统维护在软件生存周期中开销大,时间长。在系统生存周期中作用十分重要。B/S是由构件组成,系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。(3)B/S是建立在广域网上,面向不同的用户群C/S 程序可以处理的用户面固定,并且在相同区域,安全要求高,需求与操作系统相关;B/S是建立在广域网上,面向不同的用户群,分散地域,这是C/S无法做到的。(4)B/S是建立在浏览器上C/S 多是建立在Window平台上,表现方式有限,对程序员普遍要求较高; B/S是建立在浏览器上,有更加丰富和生动的表现方式与用户交流,大部分难度减低,减低开发成本。(5)B/S信息流向可变化C/S程序一般是典型的中央集权的机械式处理,交互性相对低;B/S信息流向可变化, 交互性加强。2.1.4 J2EE平台J2EE是一种利用Java2平台来简化企业解决方案的开发、部署和管理等相关复杂问题的体系结构。 J2EE技术的基础就是Java 2平台的标准版,J2EE不仅巩固了标准版中的许多优点,例如“编写一次,随处运行”的特性、方便存取数据库的JDBC API, CORBA接口技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对EJB(Enterprise JavaBeans), Java Servlets、API、JSP(Java Server Pages)以及XML技术的全面支持。J2EE体系结构提供中间层集成框用来降低应用的开发费用、提供高可用性以及可扩展性。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,支持对现有应用程序的集成,支持EJB(Enterprise JavaBeans),支持应用的装配和部署,支持名字目录服务,增强了安全机制,提高了性能口。2.2 JSP技术JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。该技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。 JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。在传统的网页HTML文件(*htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无Java Applet,甚至无Frame。2.2.1 JSP的特点JSP技术在多个方面加速了动态Web页面的开发:(1)内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。 (2)强调可重用的组件绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。(3)采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java 2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。当与Java 2平台,企业版(J2EE)和Enterprise JavaBean技术整合时,JSP页面将提供企业级的扩展性和性能,这对于在虚拟企业中部署基于Web的应用是必需的。2.2.2 JSP与ASP的区别Microsoft 公司的 ASP 技术也是动态网页开发技术。JSP和ASP从形式上非常相似,ASP程序员一眼就能认出以及。但是深入探究下去会发现它们很多的差别,其中最主要的有以下三点:(1) JSP的效率和安全性更高ASP以源码形式存放,以解释方式运行,每次ASP网页调用都需要对源码进行解释,运行效率不高。另外,IIS的漏洞曾使得许多网站源程序大曝光,包括笔者以前用ASP开发的网站,ASP程序全部被人下载了去。JSP在执行以前先被编译成字节码 (byte code),字节码由Java虚拟机(Java Virtual Machine)解释执行,比源码解释的效率高;服务器上还有字节码的Cache机制,能提高字节码的访问效率。第一次调用JSP网页可能稍慢,因为它被编译成Cache,以后就快得多了。同时,JSP源程序不大可能被下载,特别是JavaBean程序完全可以放到不对外的目录中。(2) JSP的组件 (Component) 方式更方便ASP通过COM来扩充复杂的功能,如文件上载、发送email以及将业务处理或者复杂计算分离出来成为独立可重复利用的模块。JSP通过JavaBean实现了同样的功能扩充。在开发方面,COM的开发远比JavaBean复杂和繁琐,学会ASP不难,但学会开发COM可不简单。而JavaBean就简单多了,从本文上述示例中可以看出开发JavaBean很方便。在维护方面,COM必须在服务器上注册,如果修改了COM程序,就必须重新注册,甚至必须关机和重新启动。JavaBean则不需要注册,放在CLASSPATH包含的目录中就行了。如果JavaBean进行了修改,则JSWDK和Tomcat现在还需要关闭和重新运行(但不是关机),但开发者已经许诺将在以后的版本中做到不需要关闭服务器。另外JavaBean是完全的OOP,可以针对不同的业务处理功能方便地建立一整套可重复利用的对象库,例如用户权限控制、email自动回复等等。(3) JSP的适应平台更广ASP目前仅适用于NT和IIS。虽然Unix下有ChiliSoft的插件来支持ASP,但是ASP本身的功能有限,必须通过ASP+COM的组合来扩充,Unix下的COM实现起来非常困难。2.2.3 JSP的工作原理JSP(JavaServer Pages)是一种基于Java的脚本技术。在JSP 的众多优点之中,其中之一是它能将 HTML 编码从 Web 页面的业务逻辑中有效地分离出来。用 JSP 访问可重用的组件,如 Servlet、JavaBean 和基于 Java 的 Web 应用程序。JSP 还支持在 Web 页面中直接嵌入 Java 代码。可用两种方法访问 JSP 文件:浏览器发送 JSP 文件请求、发送至 Servlet 的请求。(1) JSP 文件访问 Bean 或其它能将生成的动态内容发送到浏览器的组件。图2.1说明了该 JSP 访问模型。当 Web 服务器接收到一个 JSP 文件请求时,服务器将请求发送至 WebSphere应用服务器。WebSphere应用服务器 对 JSP 文件进行语法分析并生成 Java 源文件(被编译和执行为 Servlet)。Java 源文件的生成和编译仅在初次调用 Servlet 时发生,除非已经更新了原始的 JSP 文件。在这种情况下,WebSphere应用服务器 将检测所做的更新,并在执行它之前重新生成和编译 Servlet。图2.1 浏览器发送 JSP 文件请求(2) 发送至 Servlet 的请求生成动态内容,并调用 JSP 文件将内容发送到浏览器。图2.2说明了该访问模型。该访问模型使得将内容生成从内容显示中分离出来更为方便。WebSphere应用服务器 支持 HttpServiceRequest 对象和 HttpServiceResponse 对象的一套新方法。这些方法允许调用的 Servlet 将一个对象放入(通常是一个 Bean)请求对象中,并将该请求传递到另一个页面(通常是一个 JSP 文件)以供显示。调用的页面从请求对象中检索 Bean, 并用 JSP 来生成客户机端的 HTML。图2.2 发送至 Servlet 的请求2.2.4 JDBC连接技术JDBC是一套允许Java与SQL数据库对话的程序设计接口。它是Java新增加的内容之一。JDBC是执行SQL语句的Java API,它由一组用Java语言编写的类与接口组成。使用JDBC可以很容易地把SQL语句传送到任何关系型数据库中。换句话说,用户不必为访问Sybase数据库写一个程序,又为访问Oracle数据库写另一个程序,你可以用JDBC API写出唯一的程序,它能够将SQL语句发送到相应的任何一种数据库。作为数据库访问的API,JDBC力求达到以下3个目标:(1)SQL级API。(2)JDBC可以建立在现有的数据库接口上。(3)保持简单。图2.3 JDBC工作原理2.2.5 JavaBeans技术JavaBeans是基于Java的一种组技术。所谓组件就是一种围绕代码实施的调试可重用的软件技术,组件的设计和开发可以使它在不同的开发和运行方案中得到使用。JavaBeans是一个可重复使用的软件部件,它提供了创建和使用以组件形式出的Java类的方法,被实现为一种独立于平台和结构的应用程序编程接口API。JavaBeans传统的应用在于可视化领域,如AWT(窗口抽象工具集)下的应用。现在,JavaBeans更多的应用于非可视化领域,它在服务器应用方面表现出了越来越强的生命力,主要用来在JSP程序中封装事物逻辑、数据库操作等,可以很好的实现业务逻辑和前台程序的分离,使系统具有更好的健壮性和灵活性在典型以很好的实现代码重用,可以在支持Java的任何平台上工作而不需要重新编译。一个标准的JavaBeans通常具有几项特征:(1)是一个公共(public)类别。(2)构造函数不传入参数。(3)有一组getXXX类型的公共方法,可以供外部对象得到内部的属性(property)值。(4)可以通过一组SetXXX类型的公共方法,来改变内部的属性值。JavaBeans的属性是内部核心的重要信息,当JavaBeans被实例化为一个对象时,改变它的属性值,也就等于改变了这个Beans的状态,这种状态的改变,也常常伴随着一连串的数据处理动作,使得其他相关的属性值也跟着发生变化JavaBeans组件在JSP中的应用与实现JavaBeans组件的应用是JSP最吸引人的地方之一,因为两者的结合在很大程序上扩展了JSP网络程序的功能。JavaBeans是一种Java类,为便于管理通常被组织成package(数据包)。通常就是把一组JavaBeans一起放在某一目录下,而且每个类的定义前加上package名。本 系统 采 用的是Tomcat作为应用服务器,因此把JavaBeans放在默认类路径:.ExamWebWEB-INFclasses下。在编译好JavaBeans类之后,需要在JSP中创建其实例才可被JSP使用。2.3 Tomcat介绍Tomcat是在SUN的JSWDK的基础上发展起来的另一个优秀的JSP服务器,它不但支持Servlet,而且还提供了Web服务器的功能。作为一个开放源码的软件,Tomcat有着自己独特的优势,可以和目前大部分的主流服务器一起工作,而且有着相当高的运行效率。Tomcat是一个带有JSP环境的servlet容器。servlet容器是一个根据用户的行为可以管理和激活servlet的运行时的shell。 Tomcat目录结构:(1)bin 包含启动/关闭脚本启动: win32:binstartup 关闭: win32:binshutdown。 (2)conf 包含不同的配置文件包括 server.xml(Tomcat的主要配置文件)和为不同的Tomcat配置的web应用设置缺省值的文件web.xml。(3)doc 包含各种Tomcat文档lib 包含Tomcat使用的jar文件。unix平台此目录下的任何文件都被加到Tomcat的classpath中。 (4)logs Tomcat摆放日志文件的地方 src ServletAPI源文件。但是只有些必须在Servlet容器内实现的空接口和抽象类。 (5)webapps 包含web项目示例 work Tomcat自动生成,放置Tomcat运行时的临时文件(如编译后的JSP文件),如果在Tomcat运行时删除此目录,JSP页面将不能运行。 (6)classes 你可以创建此目录来添加一些附加的类到类路径中,任何你加到此目录中的类都可在Tomcat的类路径中找到自身。2.4 MySQL简介MySQL是一个多用户、多线程的SQL数据库,是一个客户机/服务器结构的应用,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。SQL (Structured Query Language结构化查询语言)是目前使用最广的并且是标准的数据库语言。SQL语言使得存取或更新信息变得十分容易,你可以直接使用SQL从网站上查询信息。MySQL的快速和灵活性足以满足一个网站的信息管理工作。数据库与用户端之间的接口程序可以使用CGI进行通信。新网ChinaDNS使用的是PHP,使用PHP和MySQL这两样东西加在一起,对于开发数据驱动的网站这项工作而言是最佳组合。PHP是一种用于服务器端执行程序解释的脚本语言。如果你接触过ASP的话,那么您对于在HTML页面中嵌入代码应该是比较熟悉了。PHP代码在服务器一端被解释、执行并转变成普通的HTML页面内容,送给浏览器一端。这种模式使得我们可以用它来完成相当复杂的功能。MySQL的功能特点如下:可以同时处理几乎不限数量的用户;处理多达50,000,000以上的记录;命令执行速度快,也许是现今最快的;简单有效的用户特权系统。2.5 MVC简介MVC模式是Model-View-Controller的缩写,中文翻译为模式-视图-控制器。MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己。MVC模式最早是smalltalk语言研究团提出的,应用于用户交互应用程序中。smalltalk语言和java语言有很多相似性,都是面向对象语言,很自然的SUN在petstore(宠物店)事例应用程序中就推荐MVC模式作为开发Web应用的架构模式。MVC模式是一种架构模式,其实需要其他模式协作完成。在J2EE模式目录中,通常采用service to worker模式实现,而service to worker模式可由集中控制器模式,派遣器模式和Page Helper模式组成。而Struts只实现了MVC的View和Controller两个部分,Model部分需要开发者自己来实现,Struts提供了抽象类Action使开发者能将Model应用于Struts框架中。MVC模式是一个复杂的架构模式,其实现也显得非常复杂。但是,我们已经终结出了很多可靠的设计模式,多种设计模式结合在一起,使MVC模式的实现变得相对简单易行。Views可以看作一棵树,显然可以用Composite Pattern来实现。Views和Models之间的关系可以用Observer Pattern体现。Controller控制Views的显示,可以用Strategy Pattern实现。Model通常是一个调停者,可采用Mediator Pattern来实现。(1)MVC的工作MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。(2)视图视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括MacromediaFlash和象XHTML,XML/XSL,WML等一些标识语言和Webservices.如何处理应用程序的界面变得越来越有挑战性。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。(3)模型模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和ColdFusionComponents这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。(4)控制器控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。现在我们总结VC的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。模型、视图、控制器三者之间的关系和各自的主要功能,如图2.4所示。图2.4 MVC组件类型的关系和功能2.6考试系统开发环境本系统是采用三层应用体系结构的设计模式,即B/S模式。该结构的主要特点是集中管理,软件的程序、数据库、发布的信息以及其他一些组件都集中在服务器上,客户端除了操作系统及浏览器外无须其它软件,即用户通过浏览器页面与系统进行交互。本章针对三层体系结构来介绍本系统的运行环境。2.6.1 客户端与其它基于Web的应用程序一样,本考试系统的客户端只需要安装Web浏览器(如Microsoft Internet Explorer)即可,无须作其它特殊配置或特别要求。2.6.2 应用服务器本系统逻辑处理部分主要由JSP和JavaBeans实现。由于JSP是基于Java语言编写的,编译后形成的Servlet需要在Java虚拟机上运行,所以需要在服务器上安装Java编译器。本系统安装的Java编译器是JDKIA 。此外,支持JSP的应用服务器选择的是Tomcat5 .0。由于Windows操作系统提供了IN服务,为了发挥IN和Tomcat各自的优势,本系统将Tomcat与US整合作为Web服务器。下面就来介绍一下JDK和Tomcat的配置。(1)JDK配置JDK (Java Develop Kit)是一切Java应用程序的基础,可以认为所有的Java应用程序是构建在这个之上的。JDK是一组API,也可以说是一些Java Class。JDK的安装比较容易,在Windows下直接运行.exe文件,安装到一个目录即可。安装完JDK程序之后,还需要设置JDK的两个环境变量,一个是classpath,值为c:j2 s dk1. 4.2 ;另一个是JAVA_HOME,值是c:j2sdk1.4.20(2)Tomcat的配置Tomcat是一个免费的开放源码的Servelet容器,直接安装后变量设置指向c:j2sdk1.4.20既可。2.6.3 系统开发工具本系统采用eclipse+myeclipse开发。2.6.4 设备本系统最低运行环境:处理器:Inter Pentium 1.0GHz 或更高内存:256MB硬盘空间:40GB光驱:CD-ROM 52X系统软件:windows xp 系统安装软件j2dk1.4、tomcat5.0、mysql5.0。第3章 系统需求分析及实现3.1 网上考试系统的分析采用传统的卷面考试时,由于出卷、印刷等问题,一般一次考试所印试卷套数较少,试卷整体扭盖面有限,容易形成小范围复习或猜题等倾向,影响了测试的客观性,另一方面也容易形成作弊现象;在线考试系统根据题库教师随机手工出卷,根据强大的辅助功能及强大的题库信息。可以使出卷试卷整体覆盖面广,可基本反映考生的实际水平,防止突击复习或猜题、作弊得高分等现象,从而保证考试的客观准确性。通常传统的卷面考试从出题到印刷、下发试卷等环节需要较长的时间,接触的人员相对较多,给保密带来一定的困难;而计算机考试系统则采用试题库方式来提供试题来源,考前无任何成套试卷。试题库可指定专人负责管理,从而增强保密性。对于客观试题,计算机考试系统可自动评分,迅速准确,无任何人为因素,从而避免人为误差。保证了考试的公平公正。以网络技术为支撑的现代计算机应用,已经具备较大的规模并相当普及,利用计算机网络组织实施大规模的异地实时考试已成为现代考试中的一种重要的方式,计算机考试系统是其中最关键的一环。基于上述悄况,采用大型数据库mysql和先进的JSP技术开发以组织客观、公正、科学合理和大规模考试为目的的标准化考试系统。3.11 网上考试系统的特点(1)基于B/S体系系统安装维护简便,数据集中管理,便于分散用户使用,适应互连时代软件的发展趋势。(2)采用三层体系结构三层体系即客户端浏览器,应用服务器和数据库。这种结构不仅把客户机从沉重的负担和不断对其提高性能的要求中解放出来,也把技术维护人员从繁重的维护升级中解脱出来。由于客户机把事务处理逻辑部分分给了功能服务器,使客户机一下子“苗条”了许多,不再负责处理复杂计算和数据访问等关键事务,只负责显示部分,所以维护人员不再为程序的维护工作奔波于每个客户机之间,而把主要精力放在功能服务器上积序的更新工作。这种三层结构层与层之间相互独立,任何一层的改变不影响其它层的功能。它从根本上改变了传统的二层C/S体系结构的缺陷,是应用系统体系结构中一次深刻的变革。(3)强大的题库管理功能多用户题库设里。不同的部门可以拥有自己的题库,只有本部门的人员才能使用本部门的题库组织考试;题库共享。试题审核功能。所有录入的试题,必须经过审核员审核通过后才能生效;试题检索功能。可以设置各种组合查询搜索结果,可以打印结果。(4)灵活多样的组卷策略管理员设定试卷的题型、章节、难度、数量和分值分类等项目,系统按照预定的参数从题库中抽取试题,自定义组卷。管理员选择考试的试题,所有参考人员按照预定的试题使用同一份试卷;考试计划必须通过审核员审核通过后才能实施。(5)详细的成绩统计功能网上考试系统不仅仅是一套考试系统,它是一套集题库管理、内部考试管理和社会考试管理三位一体的综合性考试管理系统。题库管理严格遵循经典测量理论的指导,按照经典测量理论的数学模型开发题库管理系统、组织试题。(6)完善的安全管理机制由于考试系统的特殊性,安全性显得格外重要。网上考试系统从考生登录(注册)到参加考试。确保系统的安全性。另外在考生考试模块的设计中,采用了大最的安全技术,例如:禁止刷新、禁止查看源代码、考试结束自动交卷、不能用同一用户名多次同时登录等等。(7)个性化操作界面一个好的系统不仅仅要体现在强大的功能上,还要在使用上具有方便、快捷、高效的特点。网上考试系统采用个性化的设计,吸取了在线电子邮局的优点,不同权限的用户具有不同的操作界面,各项功能安排井井有条、一目了然。3.12 网上考试系统的功能出卷系统实现题型管理和考试管理题型严格遵循经典测量理论的指导,按照经典测量理论的数学模型开发题型管理系统、组织试题。主要功能包括:(1)专业管理(2)题型维护(3)试题管理(修改/删除)(4)难度管理由于题库对试题的质量要求较高,一般试题的增、删、改都是通过管理员确认后进行的。开放使用,广泛征集试题和测试样本,用户只要通过浏览器连上网络,便可方便使用题库包括提交试题、参加测试等。通过网络来征集试题和组织抽样测试,可以大大减轻建立题库的成本,缩短建立题库的时间,提高题库的运行质量。集中存储测试数据,通过网络运行题库,进行联机测试和评价,可以集中保存测试数据,通过数据挖掘、统计与分析,校正试题参数的估值错误,剔除不良试题,保证试题质量,另外,提供联机考试、个人自测、联机评卷等多项功能,使利用无纸化考试成为可能。试题属性项定义,一般题库中试题所具有的属性项有:试题编号、试题类型、考察知识点、难度、认知分类、答题时间、通过分数等。其中经常用于选题的参数有:试题编号、试题类型、考察知识点、难度等。上面试题的属性比较直观明了,在此只对一些主要的属性项作简要的说明:试题名字:试题的唯一标识,只要知道某个试题编号,便可唯一确定一道试题,这对利用计算机处理试题极为重要。试题类型:试题的类型,如单项选择题、多项选择题、判断题等。难度:题目的难度是衡量题目难易水平的指标。难度在题库中的作用主要是为了筛选题目。题目难度的选取需要考虑到测验的目的和性质。在题库系统建设中,试题质量控制与参数设置是最重要的两个环节。题库建成后,我们需要输入一些查询参数,系统将根据这些参数抽出最适合参数要求的试题,组成能够实际使用的试卷。定义这种查询参数以及对这些参数进行变换算法,我们称之为组卷策略。组卷策略的实质是将比较直观明了的组卷参数变换成计算机能够直接操作的试题属性项,然后根据这些属性项,在题库中抽取试题组成试卷。快速组卷只需要设置试卷的一些整体属性参数和题型结构参数,便可以组出一份满意的试卷,参数设置简单直观。(1)设置题型与知识点分布对应对于相对评价,主要的目的是将考生的成绩拉开档次,以显示出差异,这就需要在题目的难度上拉开档次,需要在知识点的难度比例等级上进行必要的分布。相对组卷的步骤为:设置总体参数:试卷标题、考试时间、分值等,考察的知识点。(2)设置难度比例分配对于绝对评价,以考察考生知识点的掌握情况,它以认知分类为主要参数抽题,需要填写知识点。第4章 系统总体设计4.1 系统模块功能介绍在线考试系统主要包括的内容有:“在线考试前台管理子系统”、“在线考试后台管理子系统”两个大模块。在“在线考试前台管理子系统”中,考生可以进行登陆、参加考试、查询成绩、修改个人信息等操作;而“在线考试后台管理子系统”则是提供给系统的管理员进行操作的,在这里,管理员可以进行题库管理、考生信息管理、试卷管理、考务管理、历史数据分析等操作。系统模块功能图如图4.1。图4.1 功能模块4.1.1 本系统需要完成的功能模块(1)参加考试在员工登陆系统后,可以查询到需要的考试项目,选择参加考试后即进入考试中。考试题目按格式列出,并且提示考试的时间。完成答卷后,员工可以提交答案,如果考试时间到,试卷会自动进行提交。参加考试页面视图如图4.2。(2)考生成绩查询考生登陆后,可以查询以往考试的信息。通过这个功能,考生可

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论