logo资料库

基于Java的在线考试系统的设计与实现.doc

第1页 / 共52页
第2页 / 共52页
第3页 / 共52页
第4页 / 共52页
第5页 / 共52页
第6页 / 共52页
第7页 / 共52页
第8页 / 共52页
资料共52页,剩余部分请下载后查看
目 录
第1章 绪论
1.1 系统开发背景
1.2系统开发的目的及意义
1.2.1系统设计的目标
1.2.2系统特点
1.2.3系统开发的意义
1.3 开发语言简介
1.4 应用技术介绍
1.4.1 JSP简介
1.4.2 MVC简介
1.4.3 Struts简介
1.4.4 Spring简介
1.4.5 Hibernate简介
1.4.6 Oracle9I简介
1.4.7 Tomcat简介
第2章 可行性分析
2.1 技术可行性
2.2 经济可行性
2.3 操作可行性
第3章 需求分析
3.1 系统主要模块功能
3.1.1管理员模块
3.1.2老师模块
3.1.3学生模块
3.2 需求规范
3.2.1 产品背景
3.2.2 产品概述
3.2.3 性能需求
3.3系统开发及运行环境
第4章 系统概要设计
4.2.1 实体表
4.2.3 数据库设计
第5章 详细设计
5.1系统详细设计的目的与任务
5.2 模块详细设计
5.2.1 管理员模块设计
5.2.1.1管理员登陆界面
5.2.1.2管理员后台界面
5.2.2 老师模块设计
5.2.2.1老师登陆界面
5.2.2.2老师后台界面
5.2.3 学生模块设计
5.2.3.1学生登陆界面
5.2.3.2学生后台界面
结 束 语
参考文献
吉首大学本科生毕业论文 JISHOU UNIVERSITY 本 科 生 毕 业 论 文 题 作 学 目: 基于 Java 的在线考试系统的设计与实现 者: 号: .. 200840430.. 所 属 学 院 : 数学与统计学院 专 业 年 级 : 信息与计算科学 08 级 指 导 教 师 : 戴厚平 职 称: 讲师 完 成 时 间 : 2012 年 5 月 24 日 吉首大学教务处制 1
吉首大学本科生毕业论文 基于 Java 的在线考试系统的设计与实现 摘要 随着计算机互联网技术的飞速发展,计算机在各行各业的应用越来越广泛。 开 发一个全新的网上在线考试系统已经越来越重要了。本文阐述了基于 Java 的在线考 试系统的设计与实现。采用 MyEclipse6.5 作为开发工具,使用 MVC 开发模式,框架 使用了目前流行的 Struts+Spring+Hibernate,数据库使用 Oracle9I。该系统主要有三大 模块:管理员模块主要包括对四种考题的增删改查操作。老师模块主要是完成对学生 考完的试题进行批阅,完成打分(这里不包括对选择题和判断题进行打分);学生模 块主要是修改信息,修改密码,完成在线考试,查看自己考试过的成绩。 关键词:MVC 设计模式;Struts+Spring+Hibernate 框架;oracle9I; Based on Java on-line examination system design and implementation Abstract to the Internet technology, the computer With the rapid development of the application of computer in all walks of life more and more widely. Developing a new on-line examination system has been more and more important.This paper expounds the Java based on on-line exam system design and implementation. The MyEclipse6.5 as a development tool, using MVC development mode, use the current framework of the popular Struts + Spring + Hibernate, database using Oracle9I. The system mainly has three modules: administrator module mainly including four examination questions to the increasing of removing check operation. The teacher module mainly is to complete the examination questions to the student reviews, complete score (not including here to multiple choice questions and judgment scored); Students module mainly is to modify the information, change the password, complete online examination, check your examination of the results. keywords: MVC design mode; Struts + Spring + Hibernate framework; Oracle9I; 2
吉首大学本科生毕业论文 目 录 第 1 章 绪论 ............................................................ 1 1.1 系统开发背景 ....................................................... 1 1.2 系统开发的目的及意义 ................................................1 1.3 开发语言简介 ....................................................... 2 1.4 应用技术介绍 ....................................................... 3 第 2 章 可行性分析 ...................................................... 6 2.1 技术可行性 ......................................................... 6 2.2 经济可行性 ......................................................... 6 2.3 操作可行性 ......................................................... 6 第 3 章 需求分析 ........................................................ 7 3.1 系统主要模块功能 ................................................... 7 3.2 需求规范 ........................................................... 9 3.3 系统开发及运行环境 .................................................10 第 4 章 系统概要设计 ................................................... 11 4.1 系统功能模块图 .................................................... 12 4.2 数据实体结构设计 ...................................................12 第 5 章 详细设计 ....................................................... 20 5.1 系统详细设计的目的与任务 ...........................................20 5.2 模块详细设计 ...................................................... 20 结束语 ................................................................ 43 参考文献 .............................................................. 45 3
吉首大学本科生毕业论文 第 1 章 绪论 1.1 系统开发背景 随着计算机互联网技术的飞速发展,计算机在各行各业的应用越来越广泛, 而且网络化是 21 世纪计算机技术发展的重要趋势之一。目前,我国的计算机网 络发展己初具规模,大部分高校的校园网都已开通。因此,如何充分利用高校校 园网络,发挥其巨大功能来为高校的教学和科研服务成为摆在我们面前的一个需 要深入探讨和解决的重大课题。随着网络技术的日益成熟,网页技术的应用已经 深入到了生活的每个角落。开发一个全新的网上在线考试系统与传统的考试模式 相比它的优点有:考试方便,不受地域的限制,只需要有网络就可进行考试;节 约了大量成本,完全不需要纸张和笔;节省了时间,由系统自动阅卷;拥有海量 题库,可随意抽取试卷考试。 1.2 系统开发的目的及意义 1.2.1 系统设计的目标 本网上在线考试系统是结合实际需要,在围绕广大师生利益的情况下进行开 发。该系统的目标有: 1.系统应具有友好的用户界面,能够让用户在登录本网站时感到操作方便、 反应迅速和愿意再次登录本网站。 2.系统应具备在线运行功能,应使用户通过网络随时随地的应用该系统。教 师也可以通过网络随时批阅学生的考卷以及查看批阅后的成绩,管理员可以在任 何地方进行四种题型的增删改查。 3.系统应该具备安全的数据存储,方便快捷的增删改查,并且具有一定的自 动操作功能,使一些固定和常用的操作自动完成无需用户干预,例如:自动阅卷 (填空题和大题除外)、自动生成学生成绩表和考试统计表等。 4.系统应该在学生模块考试时设定考试时间,超过考试时间不允许作答,老 师在批阅试卷打分时,不能让老师输入错误的分数值,如负数和非数字类型的数 字不允许输入。 1.2.2 系统特点 一个现代化的在线考试系统概括起来应该具有如下特点: (1).系统最大限度的实现了易维护性和易操作性; (2).方便了学生和老师考卷和批改卷子,大量的节省人力和物力; (3).管理员能精确的定位四种题型,并能进行 CRUD 操作,还能根据提供的 筛选条件进行题目的筛选; 1
吉首大学本科生毕业论文 (4).界面设计友好、美观,数据存储安全可靠。 1.2.3 系统开发的意义 基于 j2EE 技术的网上在线考试系统为各地高校的老师和学生们提供了极大 的方便。为学生提供在线考试的平台,同时能节省大量的人力和物力。管理员可 以插入海量题库,数据存储安全可靠。 1.3 开发语言简介 Java 是一种简单易用、完全面向对象、有平台无关性、安全可靠的、主要面 向 Internet 的开发工具。Java 自从 1995 年正式问世以来,它的快速发展已经 让整个 web 世界发生了翻天覆地的变化。随着 Java Servlet 的推出,Java 在电子 商务方面开始崭露头角,最新的 Java Server Page(JSP)技术的推出,更是让 Java 成为基于 web 应用程序的首选开发工具。 Java 是第一套允许使用者将应用程序通过 Internet 从远端服务器传输到本 地机上并执行的一种语言;是一种应用程序提供者不需要知道使用者的计算机硬 件与软件环境的语言。比尔盖茨曾经说过:“Java 是最卓越的程序设计语言。” Java 自问世以来,技术和应用发展非常快,在计算机、移动电话、家用电 器等领域中无一没有 Java 技术的存在。在 Internet 上,几乎每个网页都包含 Java 程序或代码。由于 Java 的广泛应用,使它受到了史无前例的关注,Java 是一种 Internet 编程语言,Java 还曾是网络动画技术的代名问,Java 虚拟机更 足让人耳目一新,Java 简单易学、跨平台而又不失强大功能。 相比其他语言,Java 技术平台具有鲜明的优越性。从最初建造 Java 平台开 始,就考虑了安全性的问题,即其安全性是建立在 Java 平台的内核中的。其他 的语言只是在软件开发时才由用户自行处理其安全问题,难免会有安全漏洞。其 次,对于程序员来说,Java 语言比以往其他的任何一门语言都好用,原因在于: Java 有自动回收垃圾的功能,Java 增加了对象和变量的强制类型检查,Java 还 取消了指针。 目前,Java 技术的架构包括以下三个方面: J2EE(Java 2 Platform Enterprise Edition)企业版,是以企业为环境而开 发应用程序的解决方案:J2EE 目前已经成为开发商创建电了商务应用的事实标 准。 J2SE(Java 2 P1atform Stand Edition)标准版,是桌面开发和低端商务应 用的解决方案:J2SE 是 Java 2 平台的标准版,它适用于桌面系统,提供了 CORBA 标准的 ORA 技术,结合 Java 的 RMI 支持分布式互操作环境。 J2ME(Java 2 P1atform Micro Edition)小型版,是致力于消费产品和嵌入 式设备的最佳解决方案:J2ME 提供了 HTTP 高级 Internet 协议,使移动电话能 以 Client/Server 方式直接访问 Internet 的全部信息,不同的 C1ient 访问不同 的文件,此外还能访问本地存储区,提供最高效率的无线文流。 时至今日,Java 仍然一步一步地朝着远大的梦想而迈进,显而易见的成果 便是在国际互联网中的应用,如今常见的浏览器也都全面支持 Java Applet 以及 衍生出来的 JavaScript 语言等,而市面上可见的操作系统,也利用 Java 的跨平 台特性来开发,包括 Windows 系列、各类 Unix 和 Linux、MVC 等操作系统,都可 2
吉首大学本科生毕业论文 以看到 Java 的踪迹。这一切都充分说明了 Java 在计算机语言大家庭中的地位。 Java 对 Internet 编程的影响就如同 C 语言对系统编程的影响一样。 1.4 应用技术介绍 1.4.1 JSP 简介 JSP(Java Server Pages)是目前十分流行的一种技术,主要用于发服务器端 的脚本程序和动态生成网站。它与目前同样流行的 ASP 技术、ASP.NET 技术是相 同性质的、同一层次的,它们在网站的建设中所起的作用是一样的,但是 JSP 技术与这两种技术相比,有着十分突出的优越性,因为 JSP 技术有 J2EE 平台支 持,发展前途不可限量。众所周知,J2EE 平台提供了 Java 企业应用编程接口(Java Enterprise APIs),为企业计算以及电子商务应用系统提供了相关的技术支持和 强大的类库支持。J2EE 平台包含十几种技术,JSP 技术正是其中的一种核心技术。 J2EE 的发展势头十分迅猛,在可以预见的将来,Sun 的 J2EE 平台可能是惟一可 以与微软的.NET 构架相抗衡的平台。从这个意义上来说,基于 J2EE 平台的 JSP 技术与基于.NET 平台的 ASP、ASP+技术之争,不正好就是 J2EE 平台与.NET 平台 之争的折射吗?因此 JSP 技术以及它的基础 J2EE 技术十分值得我们关注。 1.4.2 MVC 简介 模 型 - 视 图 -控 制 器 ( MVC ) 是 Xerox PARC 在 八十 年 代 为编 程 语 言 Smalltalk-80 发明的一种软件设计模式,至今已被广泛使用。最近几年被推荐 为 Sun 公司 J2EE 平台的设计模式。 (1)、MVC 如何工作: MVC 是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使 用 MVC 应用程序被分成三个核心部件:模型(Model)、视图(View)、控制器 (Controller)。它们各自处理自己的任务。 视图 :视图是用户看到并与之交互的界面。对老式的 Web 应用程序来说, 视图就是由 HTML 元素组成的界面,在新式的 Web 应用程序中,HTML 依旧在视图 中扮演着重要的角色,但一些新的技术已层出不穷,它们包括 Macromedia Flash 和象 XHTML,XML/XSL,WML 等一些标识语言和 Web Services.如何处理应 用程序的界面变得越来越有挑战性。MVC 一个大的好处是它能为应用程序处理很 多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的 还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的 方式。 模型 :模型表示企业数据和业务规则。在 MVC 的三个部件中,模型拥有最 多的处理任务。例如它可能用象 EJBs 和 ColdFusion Components 这样的构件对 象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这 样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被 多个视图重用,所以减少了代码的重复性。 控制器 :控制器接受用户的输入并调用模型和视图去完成用户的需求。所 以当单击 Web 页面中的超链接和发送 HTML 表单时,控制器本身不输出任何东西 和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确 定用哪个视图来显示模型处理返回的数据。 3
吉首大学本科生毕业论文 现在我们总结 MVC 的处理过程,首先控制器接收用户的请求,并决定应该调 用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最 后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。 (2)、为什么要使用 MVC : 大部分 Web 应用程序都是用像 ASP,PHP,或者 CFML 这样的过程化语言来创 建的。它们将像数据库查询语句这样的数据层代码和像 HTML 这样的表示层代码 混在一起。经验比较丰富的开发者会将数据从表示层分离开来,但这通常不是很 容易做到的,它需要精心的计划和不断的尝试。MVC 从根本上强制性的将它们分 开。尽管构造 MVC 应用程序需要一些额外的工作,但是它给我们带来的好处是无 庸质疑的。 首先,最重要的一点是多个视图能共享一个模型,正如我所提及的,现在需 要用越来越多的方式来访问应用程序。对此,其中一个解决之道是使用 MVC,无 论用户想要 Flash 界面或是 WAP 界面;用一个模型就能处理它们。由于已经 将数据和业务规则从表示层分开,所以可以最大化的重用代码了。 由于模型返回的数据没有进行格式化,所以同样的构件能被不同界面使用。 例如,很多数据可能用 HTML 来表示,但是它们也有可能要用 Macromedia Flash 和 WAP 来表示。模型也有状态管理和数据持久性处理的功能。 因为模型是自包含的,并且与控制器和视图相分离,所以很容易改变你的应 用程序的数据层和业务规则。如果想把数据库从 MySQL 移植到 Oracle,或者改 变基于 RDBMS 数据源到 LDAP,只需改变模型即可。一旦你正确的实现了模型, 不管数据来自数据库或是 LDAP 服务器,视图将会正确的显示它们。由于运用 MVC 的应用程序的三个部件是相互对立,改变其中一个不会影响其它两个,所以依据 这种设计思想能构造良好的强内聚弱偶合的软件构件。 1.4.3 Struts 简介 Struts 最早是作为 Apache Jakarta 项目的组成部分问世运做。项目的创立 者希望通过对该项目的研究,改进和提高 JSP、Servlet、标签库以及面向对象 的技术水准。Struts 的目的是为了帮助开发者减少在运用 MVC 设计模型来开发 Web 应用的时间。仍然需要学习和应用该架构,不过它将可以完成其中一些繁重 的工作。如果想混合使用 Servlet 和 JSP 的优点来建立可扩展的应用,Struts 是一个不错的选择。Struts 是 MVC 的一种实现,它将 Servlet 和 JSP 标记(属 于 J2EE 规范)用作实现的一部分。Struts 继承了 MVC 的各项特性,并根据 J2EE 的特点,做了相应的变化与扩展。Struts 的核心是 ActionSevlet,ActionSevlet 的核心是 Struts-config.xml 配置文件。 1.4.4 Spring 简介 spring 在英文里有春天、弹簧、跳跃和泉眼的意思。Spring 也表示是一个开 源框架,是为了解决企业应用程序开发复杂性由 Rod Johnson 创建的。框架的主 要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring 使用基本的 JavaBean 来完成以前只 4
吉首大学本科生毕业论文 可能由 EJB 完成的事情。然而,Spring 的用途不仅限于服务器端的开发。从简单 性、可测试性和松耦合的角度而言,任何 Java 应用都可以从 Spring 中受益。 1.4.5 Hibernate 简介 Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常 轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵 数据库。 Hibernate 可以应用在任何使用 JDBC 的场合,既可以在 Java 的客户端 程序使用,也可以在 Servlet/JSP 的 Web 应用中使用,最具革命意义的是,Hibernate 可以在应用 EJB 的 J2EE 架构中取代 CMP,完成数据持久化的重任。 1.4.6 Oracle9I 简介 2000 年 10 月在 Oracle Open World 上发布,为 Oracle 数据库应用服务 器和开发工具引进了许多新功能。Oracle9i 是业界第一个完整、简单的用于互 联网的新一代智能化的、协作各种应用的软件基础架构。Oracle9i 实际上是指 Oracle9iDataBase, Oracle 9i Application Server 和 Oracle9i Developer Suite 的完整集成。随着软件逐渐开始转变为一种托管服务( hosted services), 具有 Internet 上的高伸缩性能的、智能化的、和可靠的 Oracle9i 将成为高质 量的电子商务服务实现的关键软件。 1.4.7 Tomcat 简介 Tomcat 是 Apache 软件基金会(Apache Software Foundation)的 Jakarta 项目中的一个核心项目,由 Apache、Sun 和其他一些公司及个人共同开发而成。 由于有了 Sun 的参与和支持,最新的 Servlet 和 JSP 规范总是能在 Tomcat 中 得到体现,Tomcat 5 支持最新的 Servlet 2.4 和 JSP 2.0 规范。因为 Tomcat 技 术先进、性能稳定,而且免费,因而深受 Java 爱好者的喜爱并得到了部分软件 开发商的认可,成为目前比较流行的 Web 应用服务器。目前最新版本是 7.0。 5
分享到:
收藏