Java语言考试系统的设计与实现.doc

上传人:滴答 文档编号:1255425 上传时间:2019-01-19 格式:DOC 页数:20 大小:222.50KB
下载 相关 举报
Java语言考试系统的设计与实现.doc_第1页
第1页 / 共20页
Java语言考试系统的设计与实现.doc_第2页
第2页 / 共20页
Java语言考试系统的设计与实现.doc_第3页
第3页 / 共20页
Java语言考试系统的设计与实现.doc_第4页
第4页 / 共20页
Java语言考试系统的设计与实现.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、 论 文 ( 设 计 ) 题 目 Java 语言考试系统的设计与实现 The Design and Realization of Examination System for Java 作 者 二 级 学 院 、 专 业 信 息 工 程 学 院 计 算 机 科 学 与 技 术 班 级 指导教师(职称) 论 文 字 数 论 文 完 成 时 间 杭 州 师 范 学 院 教 务目录摘 要 .Abstract .第一章 引言 .11 计算 机等级考试(二级) .12 考试系统采用的实现模式 .第二章 考试系统采用的技术和运行平台 .21 Visual Basic .NET .22 SQL Server

2、 2000 .23 Web 服务 .231 Web 服务的概念 .232 Web 服务的优点 .24 .NET 对 Web 服务的支持 .25 考试系统的运行平台 .251 硬件平台 .252 软件平台 .第三章 考试系统的数据库设计、构成模块及特点 .31 考试系统的数 据库设计 .32 考试系统的构成模块 .321 题库 管理 模块 .0322 身份验证模块 .0323 各类 试题模块 .0324 监考管理模块 .1325 阅卷模块 .1326 缺考统计模块 .133 考试系统的特点 .1第四章 考试系统实现的关键技术 .241 数据 库操作 .242 打乱序 号算法 .543 文件的压缩

3、与 解压缩 .5第五章 总结与展望 .7参考文献 .9附录 A: .9系统使用说明: .9杭州师范学院本科毕业论文 Java 语言上机考试系统的设计与实现摘要:随着信息技术的广泛使用,各类计算机考试也应运而生,这类考试多为上机考试,因此,考试的环境,即考试系统的设计和实现非常重要。在网络技术逐渐渗入社会生活各个层面的今天,采用网络考试是一个很重要的方向。目前,网络考试系统的实现,可以采用传统的客户机/服务器模式,也可以采用目前流行的浏览器/服务器模式,即基于 Web 的方式。本系统采用的后一种模式,因此,本文简单的介绍了该模式的实现方法。同时,还介绍了等级考试的一些相关信息;语言类考试系统设计

4、和实现的相关技术;该系统的组成模块、数据库设计以及运行平台。还介绍了该考试系统的特点和实现的关键技术。最后,指出了该考试存在的一些不足,以及对实现该考试系统的主要技术Web 服务技术在考试系统中的应用进行了展望。关键词:考试系统 Web 服务 数据库 Visual Basic .NET杭州师范学院本科毕业论文 Java 语言上机考试系统的设计与实现AbstractWith the mass use of the information technology, all kinds of computer examinations arise. And people exam usually by

5、 operate the computer, so, the environment of the examination, namely have an examination the design and realizing of system, is very important. Today, when the network technology permeates each aspect of social life gradually, so choose the network to have an examination is a very important directi

6、on. At present, to realize the network examination system, can adopt the traditional mode of client / server or the present popular mode of browser / server which based on Web. The last kind of mode is chosen by this system, hence introduced the mode implementation method in the paper. Meanwhile, in

7、troduced some relevant information of grade examination, relevant technology that the system is designed and realized , and composition module, database design, operation platform of this system. Finally, looking forward to the main technology of the system realizing that the application of the Web

8、served technology.Keywords:Examination System Web Services Database Visual Basic .NET杭州师范学院本科毕业论文 Java 语言上机考试系统的设计与实现第一章 引言当今世界,社会和经济的发展对信息资源、信息技术和信息产业的依赖程度越来越大,信息化是世界各国发展经济的共同选择。我国也已把加快国家经济信息化提到重要日程。西方国家在普及计算机知识,全方位、多层次地培养各行各业计算机应用人员方面,有许多经验值得我们借鉴,其中一条就是开展全国范围的定期的计算机各类等级考试。为了适应我国必须尽快实现国家经济信息化,提高全社会

9、的计算机应用水平,使我国的计算机应用与国际社会接轨的形势的要求,在我国也已经设立或引进了各类计算机考试。国家教委组织的“全国计算机等级考试“就是一种。等级考试除了理论考以外,很重要的一部分是上机操作,也就是在指定的时间里完成指定的计算机基本操作,按给定要求编写、调试程序。上机考试与传统的考试相比,它最大限度排除了人为因素的作用,保证了考试的客观性;考生在考试之后,一般就能够得到成绩,使考试具有实时性;而且通过计算机改卷,标准一致,具有最佳的可靠性。同时,还可以考查考生的实际动手操作能力。11 计算机等级考试(二级)全国计算机等级考试(二级)是教育部考试中心面向社会推出的一项测试应试者计算机应用

10、知识和能力的考试。二级考试的基本要求是:具有计算机的基础知识;了解操作系统的基本概念,掌握常用操作系统的使用;掌握基本数据结构和常用算法,熟悉算法描述工具流程图的使用;能熟练地使用一种高级语言或数据库语言编写程序、调试程序。二级考试包含的内容比较广泛,有计算机的基础知识,Windows 的基本操作,程序设计以及数据库的知识。以往程序设计的语言主要有 QBASIC、FORTRAN、Pascal、C 以及 FOXBASE,其中FOXBASE 是数据库程序设计语言,其余四种为高级语言。每种高级语言的考试内容基本包括该语言的基本结构、基本语句、数据类型、运算符、表达式、数组、函数、文件等。教育部考试中

11、心新推出了 2004 版全国计算机等级考试(NCRE)大纲,对全国计算机等级考试的考试科目设置、考核内容、考试形式等实施调整。二级考试新增加了 Java、Access、C+三个科目,逐步停考二级 QBasic 和 FoxBASE,这些新增科目计划将于明年上半年在我省正式推广。二级科目名称进一步规范,根据应用性质和科目特点将现有科目划分成二级语言程序设计(C 、C+ 、Java 、Visual Basic、QBasic)和二级数据库程序设计( FoxBASE、Visual FoxPro、 Access)两类。二级上机考试中将取消对 DOS 部分的考核,各科目上机考试运行平台为:Access 20

12、00、 Java JDK 1.4.2、Visual C+ 6.0、Visual Basic 6.0、Visual FoxPro6.0、Turbo C 2.0,除了 Turbo C 2.0 仍在 DOS 5.0 以上系统运行外,其他均在 Windows2000 系统上运行,对逐步停考的三个科目考试平台不作任何改动。12 考试系统采用的实现模式在网络技术逐渐渗入社会生活各个层面的今天,传统的考试方式也面临着变革,而网络考试则是一个很重要的方向。基于数据库和网络应用的考试系统有多种实现技术,可以采用传统的客户机/服务器(Client/server)模式,也可以采用目前流行的浏览器/服务器(Brows

13、er/Web)模式,即基于WEB 的方式。所谓 Client/server 模式,是指把数据库内容(比如试题库)放在远程的服务器上,在客杭州师范学院本科毕业论文 Java 语言上机考试系统的设计与实现户机上安装相应软件。Client/server 结构在技术上虽然很成熟,但该结构的程序往往只局限在小型的局域网内部,不利于扩展。并且,该结构的每台客户机都需要安装相应的客户端程序。由于考试系统拥有的用户量比较多,因此,如果采用该结构,系统的安装与维护工作比较繁重。同时,由于应用程序直接安装在客户机,客户机直接和数据库服务器交换数据,系统的安全性也受到一定影响。基于 WEB 的方式其实是一种特殊的

14、Client/server 方式。在这种方式中,客户端是各种各样的浏览器,浏览器作为通用的用户程序界面,主要提供人机接口服务,而服务器则响应用户请求并提供用户需要的信息。Browser/Web 模式采用三层体系结构,即包括数据库服务器、Web服务器、客户浏览器三部分。由于采用了互联网的相关技术,Browser/Web 结构的系统开放性好,易维护和扩展。客户浏览器只跟 Web 服务器交换数据,数据安全性比较高,同时,由于客户端不需要安装专用程序,可大大降低运行维护费用。当然,Browser/Web 结构在网络安全方面也有其弱点。在 Client/server 结构中,应用程序是在客户机上运行的独

15、立程序,如果这台计算机安全的话,那么应用程序就是安全的。而在 Browser/Web 结构中,众多的客户浏览器访问同一个 Web 服务器,Web 服务器会成为攻击活动的对象。基于上述考虑,用 Browser/Web 模式来设计考试系统比较合适,服务器端采用 WEB SERVER+数据库系统+ASP 组件来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程。所有的系统升级和更新均只要在服务器端完成,这样可较灵活地适应考试内容的不断更新,从而减少系统升级、更新的工作量,同时可进行远程系统维护和管理。第二章 考试系统采用的技术和运行平台该考试系统用 Microsoft Visual Basic

16、.NET 进行开发,数据库采用 SQL Server 2000。由于系统采用三层结构,即数据库服务器、Web 服务器、客户浏览器,为了实现可用子网内的任何一台服务器作为数据库服务器的需求,本系统采用 Web 服务技术,即把 Web 服务装在 Web 服务器中,通过访问 Web 服务来进行数据库的访问。下面分别对 Microsoft Visual Basic.NET、SQL Server 2000 和 Web 服务技术进行介绍。21 Visual Basic .NETMicrosoft Visual Basic.NET 是 Microsoft Visual Basic 6.0 的后续版本,它是基

17、于 .NET 框架直接创建的,因此可以使用所有的平台特性,并能够与其他 .NET 语言协同工作。211 Visual Basic 6.0Visual Basic 6.0 有限的面向对象的特性,特别是缺乏继承,使之不适合于开发面向对象的架构。正由于这一点,对于某些类型的开发,特别是大型、复杂应用程序的开发,与 C+或Java 开发人员相比,Visual Basic 6.0 开发人员会处于不利的地位。另外,Visual Basic 6.0没有多线程能力;错误处理能力差,与其他语言如 C+的集成能力差;对于基于 Internet 的应用程序,没有生动有效的用户界面等缺点。212 Visual Bas

18、ic.NETVisual Basic.NET 对于 IT 业来说,它可能是一个小的前进,但是对 VB 开发人员来说,它是一个巨大的进步!Visual Basic .NET 并不只是向核心技术添加和修改了技术特性的 VB 新版本,它打破了模式的框框!实际上它是一种新编程语言,基于新的核心技术.NET 范例。在杭州师范学院本科毕业论文 Java 语言上机考试系统的设计与实现Visual Basic .NET 之中,技术变化是如此之多,以致 VB 开发人员可以与 C#,C和 Java 开发人员相竞争。在许多方面 Visual Basic .NET 都与它以前的版本不同。它具有更高的一致性和类型安全级

19、别。用 Visual Basic .NET 我们更容易写出控制性、可读性很高的代码。虽然它有时要求你习惯于那些编译时额外的检查,但它将在你测试和调试时,为你节约宝贵的时间。VB.NET 的语法与 VB 6.0 已经有了根本性的差别,与其说 VB.NET 是 VB 6.0 的升级,不如说VB.NET 是 C#的 Basic 版本。由于采用了 CLI 的结构,VB.NET 将很难兼容以前的 VB 6.0 的代码,大量的 VB 代码无法顺利地转移到.NET 上,不过开发人员仍然可以在.NET 平台下,将原有的 COM组件进行重新包装,形成.NET 平台下的 Web 服务组件,而且.NET 的整个平台

20、、开发工具的高集成性和友好的开发环境还是会给开发人员留下深刻印象。在 Java 领域中,无论是 Borland 的JBuilder 6,还是 Sun 的 Forte for Java,或是 IBM 的 WebShpere Studio Application Developer、VisualAge for Java 都无法达到 VB. NET 的生产效率。22 SQL Server 2000SQL Server 是一个功能强大的后台数据库管理系统,它可以帮助各种规模的企业用来管理数据,以可伸缩性的商业解决方案、强大的数据仓库以及与 Microsoft Office 和 Microsoft Ba

21、ckOffice 的紧密集成为企业提供额外的商业便利,日益为广大用户所喜爱。到目前为止,SQL Server 2000 是 Microsoft 公司推出的数据库管理系统的最新版本。它不但继承了原来版本的许多优点,而且又增加了很多更先进的功能。Microsoft SQL Server 2000 使用了最先进的数据库架构,具有完全的 Web 功能,通过对高端硬件平台以及最新的网络和存储技术的支持,可以为较大的 Web 站点和企业级的应用提供很好的解决方案。SQL Server 2000 扩展了 SQL Server 7.0 版的性能,并增加了几种新的功能,使得用户能够更方便、更快捷地管理数据库和开

22、发应用程序。因此它已成为大规模联机事务处理(OLTP) 、数据仓库和电子商务应用程序的优秀数据库平台。23 Web 服务随着 Internet 和网络化的日渐成熟,无论是属于单个组织的计算机还是属于多个组织的计算机都想通过 Internet 彼此交流。借助更基本的 Internet 通信协议,可能需要几个月的时间和大量的资本开发自己的系统。而且当使用该系统和另一个组织的系统进行通信时,两个系统之间的转换也许并不容易,甚至是不可能的,最后得到的只是一团糟。过去人们引入分布式架构系统以解决这个问题。大多数系统本身的缺点甚至妨碍了它们在企业范围内的部署,更别说在全球的部署。为此带来了 Web 服务。

23、231 Web 服务的概念从表面上看,Web 服务就是一个应用程序,它向外界暴露出一个能够通过 Web 进行调用的API。这就是说,你能够用编程的方法通过 Web 来调用这个应用程序。Web 服务内在的含义是基于 XML 的通信流通过 HTTP 协议在一个公共网络(Internet) 上传送。Web 服务平台是一套标准,它定义了应用程序如何在 Web 上实现互操作性。你可以用任何你喜欢的语言,在任何你喜欢的平台上写 Web 服务 ,只要我们可以通过 Web 服务标准对这些服务进行查询和访问。杭州师范学院本科毕业论文 Java 语言上机考试系统的设计与实现232 Web 服务的优点Web 服务最

24、大的特性也许是使用 XML 支持的跨平台的兼容性。即使我们假设一个组织内部使用的都是相同的操作系统、软件等,我们也不可能期望其他的组织使用相同的设备。而Web 服务不作此类的要求, 它不依赖于任何平台或公司。它的部分吸引力在于,不管是在Solaris,UNIX,Mac 还是在 Windows 上部署 Web 服务,所有用户都可以连接并使用。这和一般 Web 站点是一样的,不必关心要访问的 Web 站点运行于什么平台,只要它能够正常工作就行。Web 服务需要使用一种平台中立的方法来描述数据和交换数据,为此它使用 XML(可扩展标记语言) 。XML 使用标准化的文本格式以一种简单的方法格式化数据

25、(无论数据有多复杂)。最初,开发人员对 XML 嗤之以鼻 ,认为它只不过是书写脚本的另一种方式而已。然而这些惯于从事数据库管理和开发的开发人员不久便意识到,XML 是能在双方之间提供数据而无须依赖于专门方案的一种技术。24 .NET 对 Web服务的支持.NET 从一开始就深深打上了 Web 服务技术的烙印,在它的市场推广活动中,无时无刻不凸显其作为 Web 服务的开发和部署平台的特征。可以说,.NET 天生就是为 Web 服务准备的开发和部署平台。.NET 是一个全新的架构,它的整个平台、开发工具的高集成性和友好的开发环境给开发人员留下深刻印象。在 Java 领域中,任何一种语言都无法达到

26、VS .NET 的生产效率。开发工具是.NET 的一大优势。.NET 正是为进行基于 Web 服务模型的应用程序开发而度身定做的新一代开发工具和基本结构。.NET 构建块服务、新增的.NET 设备支持以及即将到来的.NET 用户体验,使人们能够充分利用 Web 服务模型,如愿以偿地开发出新一代应用程序。VB.NET 平台内建了对 Web 服务的支持,包括 Web 服务的构建和使用。与其它开发平台不同,使用.NET 平台,你不需要其他的工具或者 SDK 就可以完成 Web 服务的开发了。.NET Framework本身就全面支持 Web 服务,包括服务器端的请求处理器和对客户端发送和接受 SOA

27、P 消息的支持。利用 Visual Studio.Net,你可以不必了解 HTTP、XML、SOAP、WSDL 等底层协议,同样能开发和使用 Web 服务。25 考试系统的运行平台251 硬件平台Web 服务器和数据库服务器可共用一台或分别用一台专用服务器或高档 PC 机,联网设备可采用交换机或 HUB,带宽为 10M-100M。252 软件平台1) 操作系统服务器端采用 Windows 2000 SERVER ,客户端采用 Windows 即均可。2) Web 服务器杭州师范学院本科毕业论文 Java 语言上机考试系统的设计与实现目前,市场上有很多 Web 服务器软件,如 IIS、Netsc

28、ape Enterprise Server、Apache 等,各有千秋,其中微软的 IIS 具有对系统硬件要求低、功能强、配置简便且与 Windows 紧密集成等优点,比较适合各院校和中学的网络硬、软件环境,因此我们选用 IIS 5.0。 3) 数据库服务器数据库服务器与 Web 服务器应有较紧密的结合,Windows 、IIS 均为微软的产品,其数据库也有相应的产品,即 SQL Server,所以我们选用 SQL Server 2000 为数据库服务器。 4) 浏览器IE 浏览器(建议版本 5.5 以上)第三章 考试系统的数据库设计、构成模块及特点31 考试系统的数据库设计考试系统离不开数据

29、库系统的支持,不论是试题、答案,还是考生信息都需要存放在数据库中,而且数据库独立于程序而存在,具有较好的安全性。本系统使用的数据库软件为 SQL Server 2000。首先建立一名为 ksxt 的数据库,主要表格介绍如下:311 考生信息表(stuinfo)列名 数据类型 长度 允许空Id Nvarchar 10Name Nvarchar 8State Nvarchar 6 该表主要存放考生的信息,其中 Id 表示考生的准考证号;Name 表示考生的姓名;State 表示考生状态,分为三种:已交卷、未交卷(正在考试中) 、缺考。考生登录的时候输入准考证号,从该表中检查是否存在该准考证号,如果

30、存在,显示该考生姓名,允许进入考试界面;否则显示“无此考生” 。State 字段有助于统计缺考人数。312 各类试题表(xuanze,tiankong,panduan,chengxtk,chengxts,chengxsj)主要包括选择题表、判断题表、概念填空题表、程序填空题表、程序调试题表、程序设计题表共 6 张表,每张表中存放了各类试题的题号和题目。下面以程序设计题表为例说明:列名 数据类型 长度 允许空TH Char 2 XTH Char 2 TM Ntext 16 Ole Image 16 其中 TH 表示该试题在第几套题目中;XTH 表示该试题的题号,即这套题目中的 2 个程序设计题中

31、的第几题;TM 表示该试题的题目描述;Ole 字段存放的为考试时要读出来,解压,供考生下载的压缩文件。如果是选择题表,还有 A、B、C、D 四个字段分别表示该试题四个选项的内杭州师范学院本科毕业论文 Java 语言上机考试系统的设计与实现容。除了程序设计题以外,其他试题表没有 Ole 字段。之所以设 TH 字段,是因为试题是按套分的,每一套中又有若干题目。每套中的题目事先就定好的,但是每次抽到该套题目时,试题的顺序是打乱的,以减少出现一模一样试卷的概率。313 考试信息表(testresult01testresult99)列名 数据类型 长度 允许空Id Nvarchar 10Xuanzth

32、Char 2 Pandth Char 2 Tiankth Char 2 Chengxtkth Char 2 Chengxtsth Char 2 Chengxsjth Char 2 Xuanzda Nvarchar 40 Panda Nvarchar 20 Tiankda Nvarchar 100 Chengxtkda Nvarchar 100 Chengxtsda Image 16 chengxsjda Image 16 Lasttime Int 4 考试信息表共有 99 张,根据考生准考证号后两位来决定把该考生的考试信息放入哪张表中,比如该考生准考证号末两位为 28,则放入表 testres

33、ult28 中。其中 Id 表示考生的准考证号;Xuanzth、pandth、Tiankth、Chengxtkth、Chengxtsth、Chengxsjth 分别表示选择题、判断题、概念填空题、程序填空题、程序调试题、程序设计题的题号;Xuanzda、pandda、Tiankda、Chengxtkda、Chengxtsda、Chengxsjda 分别表示选择题、判断题、概念填空题、程序填空题、程序调试题、程序设计题的正确答案。Lasttime 用于记录考试时间,如果时间到了还没有交卷,则回收答案,停止考试。314 回收表(reclaim,result)回收表共有两张,一张记录回收的答案,另一张记录回收是否成功。表 1列名 数据类型 长度 允许空Id Nvarchar 10Xuanzth Char 2 Pandth Char 2 Tiankth Char 2 Chengxtkth Char 2 Chengxtsth Char 2 Chengxsjth Char 2 Xuanzda Nvarchar 40

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

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。