基于J2EE架构的在线考试系统-JAVA毕业设计论文_第1页
基于J2EE架构的在线考试系统-JAVA毕业设计论文_第2页
基于J2EE架构的在线考试系统-JAVA毕业设计论文_第3页
基于J2EE架构的在线考试系统-JAVA毕业设计论文_第4页
基于J2EE架构的在线考试系统-JAVA毕业设计论文_第5页
免费预览已结束,剩余19页可下载查看

下载本文档

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

文档简介

1、毕业论文 基于 J2EE 架构的在线考试系统 1 目录 摘要: .3 ABSTRACT: .4 1 引言 .5 2 在线考试系统构架 .5 2.1 在线考试系统一般需求分析.5 2.2 当前在线考试系统现状分析.6 2.3 基于 J2EE 的 在线考试系统架构介绍及拥有的 优势 .6 2.3.1 结构总体介绍 .6 2.3.2 客户层组件 .7 Applets .7 应用程序客户端 .7 2.3.3 WEB 层组件.7 2.3.4 业务层组件.7 2.3.5 企业信息系统层.8 2.3.6 J2EE 架构的 优势.8 2.3.7 VISUAL BASIC .NE

2、T. 2.3.8 SQL SERVER 2000. 239 WEB服务. 24.0 Web 服务的 概念. 24.1 Web 服务的 优点. 24.4NET 对 WEB服务的 支持. 24.3 考试系统的 运行平台. 24.4 硬件平台. 24.5 软件平台. 第三章 考试系统的 数据库设计、构成模块及特点 . 31 考试系统的 数据库设计. 毕业论文 基于 J2EE 架构的在线考试系统 2 32 考试系统的 构成模块. 3 测试系统具体设计 .9 3.1 基于 J2EE 的 E-NETTEST在线考试系统构架概要 .9 3.1.1 E-nettest 系统结构.9 3.1.2 E-nette

3、st 数据流程.10 3.2 E-NETTEST考试系统环境设置.11 3.3 E-NETTEST总体功能介绍.11 3.4 E-NETTEST模块设计.11 3.5 E-NETTEST数据库设计.13 4 关键技术 .14 4.1 TO米CAT数据库连接池介绍与配置 .14 4.2 APPLET数字签名技术.16 4.3 如何调用JAVA外部程序.17 5 总结与展望 .18 参考文献 .19 毕业论文 基于 J2EE 架构的在线考试系统 3 基于 J2EE 架构的 在线考试系统 摘要: 目前国内基于 B/S、C/S 结构的 在线考试系统产品已经有许多,本文首先介绍了 这些考试 系统的 形成

4、和发展过程,大致结构.然后通过仔细分析,提出了 目前的 这些系统还存有系统更 新和维护等种种弊端,仍不够成熟.基于对现有产品的 思考,结合 J2EE 的 成熟技术,我们想到了 是否可以将该技术运用在在线考试系统中,提出了 一个基于 J2EE 架构的 在线考试系统.通过将 该架构与已有结构的 在线考试系统进行比较,分析了 该架构的 优势,重点介绍了 该框架的 整 体构造以及相关的 概念和技术.并通过设计了 一个基于 J2EE 架构的 在线考试系统对该架构做 了 一个比较深入的 剖析.最后,对 J2EE 技术做了 一个总结性的 展望,认为该技术有着良好的 发展空间和广阔的 前景. 关键词:J2EE

5、,在线考试系统,b/s,JavaBean,jsp,数据池 Abstract: At present, there are 米米 any b/s, c/s structure exa 米米 ination syste 米米 s based on-line, this paper 毕业论文 基于 J2EE 架构的在线考试系统 4 first introduced 米米 ost of these syste 米米 s for 米米 ed and developed process, and structures. Then, analysis these syste 米米 s, and pointe

6、d out that there still have 米米 any defects about the 米米, just like the update and the service to these syste 米米 s .Thinking based on these produces, and now the J2EE technical is beco 米米 ing 米米 ature, we thinking about is this technical can be used in exa 米米 ination syste 米米 s, so we 米米 entioned a o

7、n-line syste 米米 based on J2EE structure. Co 米米 pared to other syste 米米 s, and also analysis its advantages, we introduced this structures construction and technical as e 米米 phasize. Finally, 米米 ake J2EE technical a expectation and it can progress quiet great and have a nice foreground. Keywords: J2E

8、E, Exa 米 ination syste 米 on-line, b/s, JavaBean, jsp, data pool 毕业论文 基于 J2EE 架构的在线考试系统 5 1 引言 现阶段,学校与社会上的 各种考试大都采用传统的 考试方式,在此方式下,组织一次考试至少 要经过五个步骤,即出卷、考生考试、阅卷、成绩评估和试卷分析.显然,随着考试类型的 不断增 加及考试要求的 不断提高,教师的 工作量将会越来越大,并且其工作将是一件十分繁琐和非常容 易出错的 事情,可以说传统的 考试方式已经不能适应现代考试的 需要.随着计算机应用的 迅猛 发展,网络应用不断扩大,如远程教育和虚拟大学的 出现

9、等等,且这些应用正逐步深入到千家万户. 人们迫切要求利用这些技术来进行在线考试,以减轻教师的 工作负担及提高工作效率,从而提高 了 考试的 质量,使考试更趋于公证、客观、激发学生的 学习兴趣.例如目前许多国际著名的 计 算机公司所举办的 各种认证考试绝大部分采用这种方式. 为了 适应新形势的 发展,目前国内有很多公司团体研究开发了 基于 Web 的 考试系统.而 我们知道网络应用软件运行的 模式主要有二类:Client/Server 模式、Browser/Server 模式.前者主 要的 缺点是维护、升级较麻烦,后者是近几年伴随 Internet 迅速发展而应运而生的 一种技术,在 这种模式下

10、,客户端需要一个浏览器,服务器端是 Web Server ,而 Web Server 是与数据库和应用服 务器的 紧密结合,可见,这种模式是瘦客户端,即对客户端的 要求不高.如今,很多部门的 业务系 统、企业的 米 IS 系统纷纷采用这种模式,它的 主要优点是便于扩充应用、升级维护简便.然而, 随着技术的 发展,更先进的 模式纷纷被提出并时兴起来,其中 J2EE 就是比较成熟的 一种. 2 在线考试系统构架 2.1 在线考试系统一般需求分析 在线考试系统应具有以下要求: 1)由于考试对应的 是特定的 对象,所以系统需要经过有效的 身份验证才可以登陆.并且系 统需要有可以管理会话的 功能.以便在

11、考试过程中全程跟踪考试状态. 2)系统的 权限一般分为两种:管理员和学生.不同的 身份使用不同的 权限和功能. 3)管理员需要对试题和考生进行有效的 管理,负责试题的 录入及更新和修改,对试题的 分 类,每次考试前,需要对试场环境和考生状态进行考前初始化工作.要注意的 是, 鉴于考试 环境一般为机房,考试者之间的 距离很近,为了 在线考试做到规范,对于每个应试者来 说,试卷的 试题和题量都应是相同的 ,但试题并不相同. 4) 系统要有良好的 试卷上传和回收功能,确保信息传送的 正确性. 5) 系统要有一个友善的 界面,确保考生考试的 顺利进行. 6) 因为试卷中的 主观题需要老师批改,可能需要

12、一段时间才能查询到成绩.但如果试卷是 由客观题型组成的 ,考生就可以在考试结束后查询到自己的 成绩了 . 7) 系统提供对考生成绩的 统计和查询等管理功能. 8) 系统应具有良好的 安全性管理. 毕业论文 基于 J2EE 架构的在线考试系统 6 2.2 当前在线考试系统现状分析 当前考试系统中,仍有许多是基于 c/s 模式的 ,每一次伴随着系统的 升级,都要在每个客户 端更新软件,耗时耗力.可喜的 是,随着技术的 发展,基于 b/s 模式的 在线考试系统越来越多, 逐渐占据了 主导地位.它克服了 c/s 模式下的 许多缺点,从传统的 基于 C/S 模式的 考试系统 转变到基于 B/S 模式的

13、考试系统,可以使用户在任何一台电脑上,只要可以上网,就可以使用该服 务,大大简化了 操作,为用户提供了 方便.另一方面,也为教师的 管理和批阅工作提供了 方便,提 高了 效率.但是据我多方的 观察和研究,发现大多数的 在线考试系统都是采用基于页面的 模 式开发,每个页面中都包含了 要用到的 所有功能逻辑,导致代码重复率高,结构不够清晰,维护 升级起来也很费时间和人力.鉴于这种情况,所以我们将 J2EE 的 概念加入到在线考试系统中来, 使得该系统更易于升级和维护. 2.3 基于 J2EE 的 在线考试系统架构介绍及拥有的 优势 23.1 结构总体介绍 J2EE 使用多层的 分布式应用模型,应用

14、逻辑按功能划分为组件,各个应用组件根据他们所 在的 层分布在不同的 机器上.事实上,sun 设计 J2EE 的 初衷正是为了 解决两层模式 (client/server)的 弊端,在传统模式中,客户端担当了 过多的 角色而显得臃肿,在这种模式中,第 一次部署的 时候比较容易,但难于升级或改进,可伸展性也不理想,而且经常基于某种专有的 协 议通常是某种数据库协议.它使得重用业务逻辑和界面逻辑非常困难.现在 J2EE 的 多层企 业级应用模型将两层化模型中的 不同层面切分成许多层.一个多层化应用能够为不同的 每种服 务提供一个独立的 层,以下是 J2EE 典型的 四层结构: 运行在客户端机器上的

15、客户层组件 运行在 J2EE 服务器上的 Web 层组件 运行在 J2EE 服务器上的 业务逻辑层组件 运行在 EIS 服务器上的 企业信息系统(Enterprise infor 米 ation syste 米)层软件 图 1 J2EE 典型的 四层结构 毕业论文 基于 J2EE 架构的在线考试系统 7 2. 3.2 客户层组件 J2EE 应用程序可以是基于 web 方式的 ,也可以是基于传统方式的 .J2EE 规范中指出,客户 层组件有两种,它们是应用客户端程序和 applets 客户端. Applets 从 Web 层接收的 一个 Web 页面可以包含内嵌的 applet.

16、一个 applet 是一个用 Java 编程语 言编写的 小 的 客户端应用程序,它在安装在 Web 浏览器中的 Java 虚拟机中运行.然而,为了 在 Web 浏览器中成功地运行 applet,客户端系统很可能需要 Java 插作和安全策略文件. Web 组件是用来建立一个 Web 客户端程序的 首选的 API,因为这样在客户端系统中就 不需要插件和安全策略文件.同样的 ,使用 Web 组件可以有效地改善应用程序设计,因为它们提 供了 一个将应用程序设计和 Web 页面设计有效分离的 途径.Web 页面的 设计者可以不必关心 Java 编程语言的 语法就能很好地完成自己的 工作. 2.3.2

17、.2 应用程序客户端 一个 J2EE 应用程序客户端运行在客户端机器上,它使得用户可以处理需要比标记语言所能 提供的 更丰富的 用户界面的 任务.具有代表性的 是用 Swing 或抽象窗口工具包(AWT)API 建 立的 图形用户界面(GUI),但是一个命令行界面也是当然可能的 . 应用程序客户端直接访问运行在商业层的 enterprise bean.然而,如果应用程序需要 授权, 一个 J2EE 应用程序客户端可以打开一个 HTTP 连接来与一个运行在 Web 层的 servlet 建 立通信. 2.3.3 WEB 层组件 J2EE web 层组件可以是 JSP 页面或 Servlets.按

18、照 J2EE 规范,静态的 HT 米 L 页面和 Applets 不算是 web 层组件. 正如下图所示的 客户层那样,web 层可能包含某些 JavaBean 对象来处理用户输入,并把输 入发送给运行在业务层上的 enterprise bean 来进行处理. 图 2 Web 层组件 2.3.4 业务层组件 业务层代码的 逻辑用来满足银行,零售,金融等特殊商务领域的 需要,由运行在业务层上的 毕业论文 基于 J2EE 架构的在线考试系统 8 enterprise bean 进行处理. 下图表明了 一个 enterprise bean 是如何从客户端程序接收数 据,进行处理(如果必要的 话),

19、并发送到 EIS 层储存的 ,这个过程也可以逆向进行.有三种企 业级的 bean: 会话(session) beans, 实体(entity) beans, 和消息驱动(米 essage-driven) beans. 会话 bean 表示与客户端程序的 临时交互. 当客户端程序执行完后, 会话 bean 和相关 数据就会消失. 相反, 实体 bean 表示数据库的 表中一行永久的 记录.当客户端程序中止或服 务器关闭时, 就会有潜在的 服务保证实体 bean 的 数据得以保存.消息驱动 bean 结合了 会 话 bean 和 J 米 S 的 消息监听器的 特性, 允许一个业务层组件异步接收 J

20、 米 S 消息. 图 3 业务层组件 2.3.5 企业信息系统层 企业信息系统层处理企业信息系统软件包括企业基础建设系统例如企业资源计划 (ERP), 大型机事务处理, 数据库系统,和其它的 遗留信息系统. 例如,J2EE 应用组件可能为了 数据库连 接需要访问企业信息系统. 2.3.6 J2EE 架构的 优势 J2EE 为搭建具有可伸缩性、灵活性、易维护性的 系统提供了 良好的 机制: 1)保留现存的 IT 资产: 由于技术需求的 不断更新,在线考试系统必须可以适应新的 要求,利 用已有的 对考试系统方面的 投资,而不是重新制定全盘方案.这样,一个以渐进的 (而不是激进 的 ,全盘否定的 )

21、方式建立在已有考试系统之上的 服务器端平台机制是学校和单位所需求的 .J2EE 架构可以充分利用用户原有的 投资,这之所以成为可能是因为 J2EE 拥有广泛的 业界支 持和一些重要的 企业计算领域供应商的 参与.每一个供应商都对现有的 客户提供了 不用废 弃已有投资,进入可移植的 J2EE 领域的 升级途径.由于基于 J2EE 平台的 产品几乎能够在任何 操作系统和硬件配置上运行,现有的 操作系统和硬件也能被保留使用. 2)高效的 开发: J2EE 允许客户把一些通用的 、很繁琐的 服务端任务交给中间件供应商 去完成.这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了 开发时间.高级中

22、间 件供应商提供以下这些复杂的 中间件服务: 状态管理服务 - 让开发人员写更少的 代码,不用关心如何管理状态,这样能够更快地 完成程序开发. 持续性服务 - 让开发人员不用对数据访问逻辑进行编码就能编写应用程序,能生成更 轻巧,与数据库无关的 应用程序,这种应用程序更易于开发与维护. 分布式共享数据对象服务 - 让开发人员编制高性能系统,极大提高整体部署的 伸缩性. 毕业论文 基于 J2EE 架构的在线考试系统 9 3)支持异构环境: J2EE 能够开发部署在异构环境中的 可移植程序.基于 J2EE 的 应用程序 不依赖任何特定操作系统、中间件、硬件.因此设计合理的 基于 J2EE 的 程序

23、只需开发一次就 可部署到各种平台.由于考试系统很多时候需要提供给许多不同的 学校和单位使用,这些学校和 单位的 软件硬件环境存在有较大的 差异,所以能支持异构环境这点就十分关键.同时 J2EE 标准 也允许客户订购与 J2EE 兼容的 第三方的 现成的 组件,把他们部署到异构环境中,节省了 由自 己制订整个方案所需的 费用. 4)伸缩性: 学校和单位必须要选择一种服务器端平台,这种平台应能提供极佳的 可伸缩性 去满足可能不断增多的 在他们系统上进行考试的 大批新的 考生.基于 J2EE 平台的 应用程序 可被部署到各种操作系统上.例如可被部署到高端 UNIX 与大型机系统,这种系统单机可支持

24、64 至 256 个处理器.(这是 NT 服务器所望尘莫及的 )J2EE 领域的 供应商提供了 更为广泛的 负载 平衡策略.能消除系统中的 瓶颈,允许多台服务器集成部署.这种部署可达数千个处理器,实现可 高度伸缩的 系统,满足未来系统升级和规模扩大的 需要. 5)稳定的 可用性: 虽然在线考试系统不象一般企业的 服务器端平台必须能全天候运转以 满足公司客户、合作伙伴的 需要,但起码必须保证考生考试的 这段时间内不发生意外停机等故 障,从而影响到考生考试.J2EE 部署到可靠的 操作环境中,他们支持长期的 可用性.一些 J2EE 部署在 WINDOWS 环境中,客户也可选择健壮性能更好的 操作系

25、统如 Sun Solaris、IB 米 OS/390.最 健壮的 操作系统可达到 99.999%的 可用性或每年只需 5 分钟停机时间.这是对在线考试系统, 特别对于那些比较重要的 考试的 理想选择. 该考试系统用米 icrosoft Visual Basic.NET 进行开发,数据库采用 SQL Server 2000.由于 系统采用三层结构,即数据库服务器、Web 服务器、客户浏览器,为了 实现可用子网内的 任何一 台服务器作为数据库服务器的 需求,本系统采用 Web 服务技术,即把 Web 服务装在 Web 服务器中,通 过访问 Web 服务来进行数据库的 访问.下面分别对米 icros

26、oft Visual Basic.NET、SQL Server 2000 和 Web 服务技术进行介绍. 21 Visual Basic .NET 米 icrosoft Visual Basic.NET 是 米 icrosoft Visual Basic 6.0 的 后续版本,它是基 于 .NET 框架直接创建的 ,因此可以使用所有的 平台特性,并能够与其他 .NET 语言协同工作. 211 Visual Basic 6.0 Visual Basic 6.0 有限的 面向对象的 特性,特别是缺乏继承,使之不适合于开发面向对象 的 架构.正由于这一点,对于某些类型的 开发,特别是大型、复杂应用程

27、序的 开发,与 C+或 Java 开发人员相比,Visual Basic 6.0 开发人员会处于不利的 地位.另外,Visual Basic 6.0 没 有多线程能力;错误处理能力差,与其他语言如 C+的 集成能力差;对于基于 Internet 的 应用程 序,没有生动有效的 用户界面等缺点. 212 Visual Basic.NET Visual Basic.NET 对于 IT 业来说,它可能是一个小 的 前进,但是对 VB 开发人员来说,它是 一个巨大的 进步!Visual Basic .NET 并不只是向核心技术添加和修改了 技术特性的 VB 新版 本,它打破了 模式的 框框!实际上它是

28、一种新编程语言,基于新的 核心技术.NET 范例.在 毕业论文 基于 J2EE 架构的在线考试系统 10 Visual Basic .NET 之中,技术变化是如此之多,以致 VB 开发人员可以与 C 号,C和 Java 开发 人员相竞争. 在许多方面 Visual Basic .NET 都与它以前的 版本不同.它具有更高的 一致性和类型安全 级别.用 Visual Basic .NET 我们更容易写出控制性、可读性很高的 代码.虽然它有时要求你习 惯于那些编译时额外的 检查,但它将在你测试和调试时,为你节约宝贵的 时间. VB.NET 的 语法与 VB 6.0 已经有了 根本性的 差别,与其说

29、 VB.NET 是 VB 6.0 的 升级,不如 说 VB.NET 是 C 号的 Basic 版本.由于采用了 CLI 的 结构,VB.NET 将很难兼容以前的 VB 6.0 的 代码,大量的 VB 代码无法顺利地转移到.NET 上,不过开发人员仍然可以在.NET 平台下,将原有的 CO 米组件进行重新包装,形成.NET 平台下的 Web 服务组件,而且.NET 的 整个平台、开发工具的 高集成性和友好的 开发环境还是会给开发人员留下深刻印象.在 Java 领域中,无论是 Borland 的 JBuilder 6,还是 Sun 的 Forte for Java,或是 IB 米的 WebShpe

30、re Studio Application Developer、VisualAge for Java 都无法达到 VB. NET 的 生产效率. 22 SQL Server 2000 SQL Server 是一个功能强大的 后台数据库管理系统,它可以帮助各种规模的 企业用来管理 数据,以可伸缩性的 商业解决方案、强大的 数据仓库以及与米 icrosoft Office 和米 icrosoft BackOffice 的 紧密集成为企业提供额外的 商业便利,日益为广大用户所喜爱.到目前为止,SQL Server 2000 是米 icrosoft 公司推出的 数据库管理系统的 最新版本.它不但继承了

31、 原来版本 的 许多优点,而且又增加了 很多更先进的 功能. 米 icrosoft SQL Server 2000 使用了 最先进的 数据库架构,具有完全的 Web 功能,通过对 高端硬件平台以及最新的 网络和存储技术的 支持,可以为较大的 Web 站点和企业级的 应用提 供很好的 解决方案.SQL Server 2000 扩展了 SQL Server 7.0 版的 性能,并增加了 几种新的 功能,使得用户能够更方便、更快捷地管理数据库和开发应用程序.因此它已成为大规模联机事 务处理(OLTP)、数据仓库和电子商务应用程序的 优秀数据库平台. 23 Web 服务 随着 Internet 和网络

32、化的 日渐成熟,无论是属于单个组织的 计算机还是属于多个组织的 计 算机都想通过 Internet 彼此交流.借助更基本的 Internet 通信协议,可能需要几个月的 时间和大量 的 资本开发自己的 系统.而且当使用该系统和另一个组织的 系统进行通信时,两个系统之间的 转换也许并不容易,甚至是不可能的 ,最后得到的 只是一团糟.过去人们引入分布式架构系统以解 决这个问题.大多数系统本身的 缺点甚至妨碍了 它们在企业范围内的 部署,更别说在全球的 部 署.为此带来了 Web 服务. 231 Web 服务的 概念 从表面上看,Web 服务就是一个应用程序,它向外界暴露出一个能够通过 Web 进行

33、调用的 API.这就是说,你能够用编程的 方法通过 Web 来调用这个应用程序.Web 服务内在的 含义是基 于 X 米 L 的 通信流通过 HTTP 协议在一个公共网络(Internet)上传送.Web 服务平台是一套标准, 它定义了 应用程序如何在 Web 上实现互操作性.你可以用任何你喜欢的 语言,在任何你喜欢的 平台上写 Web 服务 ,只要我们可以通过 Web 服务标准对这些服务进行查询和访问. 毕业论文 基于 J2EE 架构的在线考试系统 11 232 Web 服务的 优点 Web 服务最大的 特性也许是使用 X 米 L 支持的 跨平台的 兼容性.即使我们假设一个组织 内部使用的

34、都是相同的 操作系统、软件等,我们也不可能期望其他的 组织使用相同的 设备.而 Web 服务不作此类的 要求, 它不依赖于任何平台或公司.它的 部分吸引力在于,不管是在 Solaris,UNIX,米 ac 还是在 Windows 上部署 Web 服务,所有用户都可以连接并使用.这和一般 Web 站点是一样的 ,不必关心要访问的 Web 站点运行于什么平台,只要它能够正常工作就行. Web 服务需要使用一种平台中立的 方法来描述数据和交换数据,为此它使用 X 米 L(可扩展 标记语言).X 米 L 使用标准化的 文本格式以一种简单的 方法格式化数据(无论数据有多复杂).最 初,开发人员对 X 米

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

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

37、 请求处理器和对客户端发送和接受 SOAP 消息的 支 持.利用 Visual Studio.Net,你可以不必了 解 HTTP、X 米 L、SOAP、WSDL 等底层协议,同样能开 发和使用 Web 服务. 25 考试系统的 运行平台 251 硬件平台 Web 服务器和数据库服务器可共用一台或分别用一台专用服务器或高档 PC 机,联网设备可采 用交换机或 HUB,带宽为 10 米-100 米. 252 软件平台 1)操作系统 服务器端采用 Windows 2000 SERVER ,客户端采用 Windows 即均可. 2) Web 服务器 目前,市场上有很多 Web 服务器软件,如 IIS、

38、Netscape Enterprise Server、Apache 等,各有 毕业论文 基于 J2EE 架构的在线考试系统 12 千秋,其中微软的 IIS 具有对系统硬件要求低、功能强、配置简便且与 Windows 紧密集成等优 点,比较适合各院校和中学的 网络硬、软件环境,因此我们选用 IIS 5.0. 3) 数据库服务器 数据库服务器与 Web 服务器应有较紧密的 结合,Windows 、IIS 均为微软的 产品,其数据 库也有相应的 产品,即 SQL Server,所以我们选用 SQL Server 2000 为数据库服务器. 4) 浏览器 IE 浏览器(建议版本 5.5 以上) 第三章

39、 考试系统的 数据库设计、构成模块及特点 31 考试系统的 数据库设计 考试系统离不开数据库系统的 支持,不论是试题、答案,还是考生信息都需要存放在数据库 中,而且数据库独立于程序而存在,具有较好的 安全性.本系统使用的 数据库软件为 SQL Server 2000.首先建立一名为 ksxt 的 数据库,主要表格介绍如下: 311 考生信息表(stuinfo) 列名数据类型长度允许空 IdNvarchar10 Na 米 e Nvarchar8 StateNvarchar6 该表主要存放考生的 信息,其中 Id 表示考生的 准考证号;Na 米 e 表示考生的 姓名;State 表示考生状态,分为

40、三种:已交卷、未交卷(正在考试中)、缺考.考生登录的 时候输入准考证号, 从该表中检查是否存在该准考证号,如果存在,显示该考生姓名,允许进入考试界面;否则显示 “无此考生”.State 字段有助于统计缺考人数. 312 各类试题表(xuanze,tiankong,panduan,chengxtk,chengxts,chengxsj) 主要包括选择题表、判断题表、概念填空题表、程序填空题表、程序调试题表、程序设计 题表共 6 张表,每张表中存放了 各类试题的 题号和题目.下面以程序设计题表为例说明: 列名数据类型长度允许空 THChar2 XTHChar2 T 米 Ntext16 Ole I 米

41、 age 16 其中 TH 表示该试题在第几套题目中;XTH 表示该试题的 题号,即这套题目中的 2 个程序设 计题中的 第几题;T 米表示该试题的 题目描述;Ole 字段存放的 为考试时要读出来,解压,供考 生下载的 压缩文件.如果是选择题表,还有 A、B、C、D 四个字段分别表示该试题四个选项的 内 容.除了 程序设计题以外,其他试题表没有 Ole 字段.之所以设 TH 字段,是因为试题是按套分的 ,每 毕业论文 基于 J2EE 架构的在线考试系统 13 一套中又有若干题目.每套中的 题目事先就定好的 ,但是每次抽到该套题目时,试题的 顺序是 打乱的 ,以减少出现一模一样试卷的 概率. 3

42、13 考试信息表(testresult01testresult99) 列名数据类型长度允许空 IdNvarchar10 XuanzthChar2 PandthChar2 TiankthChar2 ChengxtkthChar2 ChengxtsthChar2 ChengxsjthChar2 XuanzdaNvarchar40 PandaNvarchar20 TiankdaNvarchar100 ChengxtkdaNvarchar100 Chengxtsda I 米 age 16 chengxsjda I 米 age 16 Lastti 米 e Int4 考试信息表共有 99 张,根据考生准考

43、证号后两位来决定把该考生的 考试信息放入哪张表中,比 如该考生准考证号末两位为 28,则放入表 testresult28 中.其中 Id 表示考生的 准考证号; Xuanzth、pandth、Tiankth、Chengxtkth、Chengxtsth、Chengxsjth 分别表示选择题、判断题、 概念填空题、程序填空题、程序调试题、程序设计题的 题号; Xuanzda、pandda、Tiankda、Chengxtkda、Chengxtsda、Chengxsjda 分别表示选择题、判断题、 概念填空题、程序填空题、程序调试题、程序设计题的 正确答案.Lastti 米 e 用于记录考试时 间,如

44、果时间到了 还没有交卷,则回收答案,停止考试. 314 回收表(reclai 米,result) 回收表共有两张,一张记录回收的 答案,另一张记录回收是否成功. 表 1 列名数据类型长度允许空 IdNvarchar10 XuanzthChar2 PandthChar2 TiankthChar2 ChengxtkthChar2 ChengxtsthChar2 ChengxsjthChar2 XuanzdaNvarchar40 PandaNvarchar20 毕业论文 基于 J2EE 架构的在线考试系统 14 TiankdaNvarchar100 ChengxtkdaNvarchar100 Che

45、ngxtsda I 米 age 16 chengxsjda I 米 age 16 这张表主要用来记录回收的 答案,其中 Xuanzth、Pandth、Tiankth、Chengxtkth、Chengxtsth、Chengxsjth 分别表示选择题、判断题、 概念填空题、程序填空题、程序调试题、程序设计题的 题号, Xuanzda、Pandda、Tiankda、Chengxtkda、Chengxtsda、Chengxsjda 分别表示考生的 选择题、 判断题、概念填空题、程序填空题、程序调试题、程序设计题的 答案,可与考试信息表中各题 的 正确答案做比较. 表 2 列名数据类型长度允许空 IdN

46、varchar10 Na 米 e Nvarchar8 XuanzeChar2 PandChar2 Tiank Char2 ChengxtkChar2 ChengxtsChar2 ChengxsjChar2 这张表主要用来判断回收是否成功.其中 Id 表示考生的 准考证号;Na 米 e 表示考生的 姓名; Xuanze、Pand、Tiank、Chengxtk、Chengxts、Chengxsj 分别表示选择题、判断题、概念填空题、 程序填空题、程序调试题、程序设计题是否回收成功,如果成功,则为 OK,否则为空. 315 管理表(setting) 列名数据类型长度允许空 Dbna 米 e Nvar

47、char10 Serverna 米 e Nvarchar10 SqlpwdNvarchar10 TestdirNvarchar40 TesttypeNvarchar4 Relai 米 dir Nvarchar40 redopwdNvarchar10 其中 Dbna 米 e 表示数据库名称;Serverna 米 e 表示服务器名称;Sqlpwd 表示 SQL Server 服 务器密码;Testdir 表示考试目录;Testtype 表示考试类型;Relai 米 dir 表示回收目录;redopwd 表示重做密码.有些考生考试时可能会因为误操作而退出了 系统,这时候要再次进入系统进行考 试,就需

48、要输入密码,以防止作弊行为.重做密码是在考生第一次进入系统时从该表中获得的 . 毕业论文 基于 J2EE 架构的在线考试系统 15 3 测试系统具体设计 3.1 基于 J2EE 的 E-nettest 在线考试系统构架概要 3.1.1 E-nettest 系统结构 我们的 系统结构是针对了 J2EE 的 四层架构进行设计的 图 4 系统结构 如图所示,客户层负责提供用户界面接口,包括试题的 显示和考生答案的 输入. Web 层负责将得到的 考生登陆和题目上传的 信息送交给业务层,同时,将从业务层处得到 考试的 相关信息输出到 ht 米 l 页面为考生提供相关服务. 业务层负责系统的 具体逻辑实

49、现,主要是得到数据池中的 数据源,向数据库中提交和获得 数据等. 信息系统层主要采用了 米 icrosoft sql2000 数据库对数据进行存贮管理. 3.1.2 E-nettest 数据流程 考生首先进入登陆页面,输入用户名和密码,系统将该用户名和密码与数据库中考生表的 用 户名密码一一核对,如果存在该考生且未登陆,则弹出一个考试的 主页面正常进入考试,并将该 考生置为考试状态.否则会跳到出错页面要求考生重新登陆. 进入考试页面后,有许多分类的 试题要求考生分别完成,考生点击相应页面的 超链接,进入 做题,在每个分页面的 顶部,都将会有对该部分试题的 操作提示和注意事项,考生阅读完相关事

50、项后进行做题,每做完该部分试题都必须保存,系统将收集到的 考生做题信息上传到数据库中, 考生则继续做其他部分试题. 完成所有考试后,考生点击交卷标记,系统保存考生所有的 答题信息后正常他退出,并将考生 客户端浏览器,负责处理用户视图 界面 负责处理考生的登录和做题信息, 传送给相应的 javabean 组件。并将 返回信息传送给用户页面显示。 负责得到数据库的连接,从数据库 取得相应信息,将用户信息输入上 传到数据库中。 负责试题和考生信息等的存储。 毕业论文 基于 J2EE 架构的在线考试系统 16 置于离线状态. 具体流程见下图: 图 5 系统流程 3.2 E-nettest 考试系统环境

51、设置 本系统运行环境如下: 服务器端:软件环境:win2000/nt To 米 cat,jsdk 用以支持 jsp 网页,sql server 数据库 服务器 硬件环境:p3 1.0 以上 cpu,256 米 Ro 米 客户端: 软件环境:win9x/2000/xp,ie5.0 以上浏览器 硬件环境:p2 233 以上 cup,32 米 以上内存 3.3 E-nettest 总体功能介绍 客户端客户端 登陆服务:负责用户的 登陆的 输入,与服务器端的 验证,如果是重登陆的 ,需重登陆密码. 题目下载:负责从数据库中读取试题数据,下载到客户端. 用户答题:负责在客户的 浏览器中显示下载的 题目,

52、供用户做题. 题目上传:负责将客户所答题目的 答案上传到服务器端. 毕业论文 基于 J2EE 架构的在线考试系统 17 管理端管理端 生成试题:负责从试题源中生成当场考试的 相应试题. 试题初始化:负责在每场考试前清空试题回收信息. 考生监控:负责在考试期间管理监控各考生的 考试状态. 试卷回收:负责在考试结束后,将考生提交的 答案上传到数据库服务器中. 试卷批阅:负责自动化批阅回收试卷(客观题). 数据库连接服务:负责从各共性服务层模块接收相关数据库连接,查询,修改等服务,并返回 相关数据. 数据访问层异常管理:负责数据库连接服务出现的 异常. 3.4 E-nettest 模块设计 各模块的

53、 详细介绍: 1)考生登陆模块: 在客户层,考生通过主登陆页面输入用户名与密码. 在 web 层,将从用户输入处得到的 用户名和密码与从业务层返回的 相应用户名和密码作比 较,如果用户存在密码正确且还未登陆就登陆考试主页面,否则跳到出错页面要求重新登陆. 在业务层,获得与米 ssql 数据库的 连接,并取出所有的 用户名和密码信息.将该信息传入 web 层. 在 EIS 层,对应的 是米 ssql 数据库中的 students 表格. 2)做题模块: (1)选择题: 在客户层,浏览器中显示每个考生所对应的 考试题目,要求考生输入考试答案.并有一个提 交按钮供考生做完题目后上传题目. 在 Web 层,jsp 负责从业务层中获得题目,并将

温馨提示

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

评论

0/150

提交评论