基于JAVA在线考试系统的设计与实现_毕业论文设计.doc
《基于JAVA在线考试系统的设计与实现_毕业论文设计.doc》由会员分享,可在线阅读,更多相关《基于JAVA在线考试系统的设计与实现_毕业论文设计.doc(36页珍藏版)》请在三一文库上搜索。
1、基于 Java 的在线考试系统的设计和实现 I *大学 毕 业 论 文(设计) 题 目:基于 JAVA 在线考试系统的设计与实现 姓 名: 学 院: 理学与信息科学学院 专 业: 通信工程 班 级: 学 号: 指导教师: 年 月 日 基于 Java 的在线考试系统的设计和实现 II 目录 摘要.I ABSTRACT: .II 第一章引言1 1.1 课题背景.1 1.2 课题的目的和意义.1 1.3 对于该项目的描述.1 1.4 系统设计思想2 1.5 可行性分析.3 第二章 系统设计相关技术介绍及开发环境要求3 2.1MVC 模式的介绍.4 2.1.1MVC 模式的概述 4 2.1.2MVC
2、的强势与劣势 .4 2.2 JAVA 组件 JAVABEANS4 2.2.1 什么是 JAVABEANS.4 2.3 JAVASE 概述.4 2.4 关于 STRUTS5 2.4.1 STRUTS简介.5 2.4.2 STRUTS的主要功能5 2.4.3 STRUTS工作原理5 2.5 关于 SWING.6 2.5.1 SWING简介.6 2.5.2 为什么需要 SWING.6 2.5.3 SWING带给我们什么.7 2.6 关于开发环境的概述7 2.6.1 操作系统 .7 2.6.2 开发语言 .7 2.6.3 开发环境 .8 2.7 关于布局的概述.8 基于 Java 的在线考试系统的设计
3、和实现 III 2.7.1BORDERLAYOUT8 2.7.2FLOWLAYOUT.8 2.7.3GRIDLAYOUT和 GRIDBAGLAYOUT8 2.8 小结.9 第三章系统需求分析和总体设计9 3.1 系统功能需求9 3.2 系统设计的总体框架10 3.2.1 软件层次结构 .10 3.2.2 界面与控制器的关系 .10 3.2.3 业务层介绍 .10 3.2.4 数据层介绍 .11 3.3 系统的用例图.11 3.3.1 总体用例分析.11 3.3.2 用户管理用例分析.12 3.3.3 考试管理用例分析.12 3.3.4 考试题目管理用例分析.13 3.3.5 成绩管理用例分析.
4、13 3.4 小结.14 第四章系统的详细设计14 4.1 客户机的类.14 4.2 服务器的类.15 4.3 实体类部分.15 4.4 工具类.16 4.5 读取配置文件类.16 4.6 系统运行的详细描述.16 4.7 系统运行图以及主要的实现代码.20 4.8 小结.28 第五章总结与展望28 5.1 工作总结.28 5.2 后续工作展望.29 致谢30 参考文献:31 基于 Java 的在线考试系统的设计和实现 I 基于基于 JAVA 的在线考试系统的设计与实现的在线考试系统的设计与实现 摘要摘要:当今节约已经成为一个命题,在线考试系统的设计意在响应这个话题, 努力构建无纸化管理。所谓
5、的在线考试就是将考试安排在网上进行,方便了考 试的组织安排工作;节省了大量的时间与资源。在线考试系统适合考生分布范 围广不容易集中的远程教育。本文通过对试题的导出,在线用户的登录,答题, 以及考试结果的输出进行设计,完成一个简单的在线考试系统。本文基于 JAVA,通过 MVC 结构,swing 进行布局。综上技术,能够将系统功能实现。 关键字:远程教育、在线考试、MVC、JAVA、Swing 基于 Java 的在线考试系统的设计和实现 II Design and implementation of online examination based on java Abstract: Today
6、s conservation has become a proposition, online examination system design is intended to respond to this topic and build a paperless management. The so-called online exam is conducted online examination arrangements will facilitate the examination of the organizational arrangements; saves a lot of t
7、ime and resources. Online examination system is suitable for a wide range of candidates is not easy to focus on the distribution of distance education. Based on the examination of export, online users login, answer, and the output of test results to design, to complete a simple online examination sy
8、stem. Based on JAVA, through the MVC structure, swing the layout. To sum up technology, the ability to implement system functions. Keywords: distance learning, online examinations, MVC, JAVA, Swing 基于 Java 的在线考试系统的设计和实现 1 第一章引言第一章引言 1.11.1 课题背景课题背景 随着近些年来网络的蓬勃发展使得网络教育也得到了一定的认可,代表了 现代教育的重要发展趋势,推动了教育的
9、更新换代。在这种形式下,网络教育 所伴随的在线考试必定能在将来的教育事业上作用明显。到目前为止,包括教 育部在内的教育执行机构等都在积极的制定在线考试机制,使得教育事业更上 一层楼。所以,如今很多研发机构都在响应时代的命题对网络教育以及附属产 业进行探讨和研发。伴随着网页技术对日常生活的渗透,开发一个在线考试系 统已经势在必行。 1.21.2 课题的目的和意义课题的目的和意义 根据现有情况,教育机构和学校都还是采用以往的考试方式,即纸质答卷。 但是传统纸质考试步骤很繁琐,考试组织机构要组织人员更具自己的需求出试 题;安排考生在所在考场考试;安排监考人员监考;安排阅卷人员对试题进行 评阅;最后安
10、排阅卷结束后的总结大会并对考试情况作出分析报告。不只是这 样,其工作也将会是十分繁琐并且非常容易出错。换句话说,传统的考试方式 已经在一定程度上不太适合现代考试的需求。在计算机应用的迅猛发展的前提 下,网络应用也伴随着蓬勃发展。所以,无论是考试机构还是考生都迫切需求 一个应用来减轻工作量。不仅减轻了考生的负担,而且也提高了考试的质量。 从而使考试更接近公平,公正,客观,更能激发考生的学习积极性。现在这种 技术已经得到初步推广,得到了各种认证考试的认可。综上需求,我们做出这 个在线考试系统能够在考试和学习的过程中起到便捷、提高考试质量、减少阅 卷工作量的作用。 基于 Java 的在线考试系统的设
11、计和实现 2 1.31.3 对于该项目的描述对于该项目的描述 对计算机的应用,使得生产效率得到了极大的提高,同时也使一部分生产 力得到了解放。在信息化飞速发展的今天,计算机的应用来解决实际生产生活 中的问题已经相当普遍。鉴于传统考试中使用纸质试卷带来的效率低下,信息 滞后等诟病,我们迫切需要一个应用解决这些问题。本文设计这个在线考试系 统,采用了 JAVA 编程语言实现考试系统。 本文介绍的这个在线考试系统,考生通过系统许可。在用户登录界面输入 自己的账户和密码,进入考试系统。然后根据系统提示,完成考试作答并得到 自己的分数。上述这个过程全部都是在网络上进行并且解决了纸质答卷的繁琐 过程。 本
12、文论述的在线考试系统主要分成两个部分,即服务器部分与客户端部分。 这两者之间是通过网络连接起来的,服务器的一个线程和客户端是连着的。 首先,在服务器部分,这部分首先启动。然后,服务器开始读取系统所需 的配置文件。上述操作能够使考试所用到的试题提交到服务器;接着读取学生 的信息、学号、姓名、密码等都要出现在服务器中。将上述信息读取到服务器 中之后,将上述信息封装在某个类中,紧接着等待客户端发送请求。当客户端 有请求发送,然后服务器就会与客户端进行连接。然后等待请求结束,该连接 才会断开。在这个过程中,服务器不断监听客户端的请求,控制运行进程。 其次,客户端部分,设计的比较简单。因为要给学生操作,
13、所以为了方便 学生进行操作,这里用到了图形界面的操作。上边提到的图形界面总共有三个 界面构成。第一个就是用于学生考试的用户登录的界面:考生需要正确输入自 己的账号和密码才能登录该系统;第二个就是学生选择考试科目的界面,在这 个窗口出现之前先将前面一个窗口关闭,然后再创建新的窗口;第三个界面是 考生的考试界面的窗口,进入此界面也要关闭前一个窗口,紧接着当考生完成 考试,提交试题,分数自动显示,然后关闭窗口。在此同时,服务器同时要断 开连接,线程结束。综上所述,就是客户端的三个窗口。 在这个在线考试系统中,本文涉及到两个主要的类:即试卷类和学生类。 这两个类的信息,都是以配置文件的形式保存的。上述
14、信息都可以用工具类读 基于 Java 的在线考试系统的设计和实现 3 取。 1.41.4 系统设计思想系统设计思想 本文所描述的在线考试系统是以服务器和客户端的连接为中心的,下述就 是该系统的设计思想。 首先,服务器先启动,服务器然后读取配置文件。接着,将考试所需的考 题以及规定格式写入配置文件;然后,把考生的账号密码等信息写入另一个配 置文件中。服务器需要读取试题信息,所以在设计时要定义学生类,试卷类以 及题目类。当客户端与服务器之间连接时需要数据请求,这里包括多种请求类 型。这里包含的请求有连接请求,考生登录请求,试题发送请求,答题请求。 为满足上述需求,我们要定义请求类,并且要求服务器不
15、断读取请求信息。为 了减少代码量,我们这里需要几个工具类:一个是创建套接字的连接;另一个 就是用来读取配置文件的工具类。这样就出来了服务器的基本框架。 在客户机这边,我们只需考虑一个线程就行了。并且涉及到四个类,这之 中有三个窗口类和一个客户机与服务器线程连接的类。这个连接类是上述三个 窗口类的一个属性,这个属性用来使三个窗口类与服务器进行数据通信。三个 窗口也只能通过上述连接类与服务器之间进行通信。这样这个客服器的整体设 计也就呈现出来了。 此外还要说一下就是,客户机与服务器进行连接是通过 IP 和端口号数据通 信的。客户机与服务器对应关系如下:一个客户机对应一个服务器;而一个服 务器对应多
16、个客户机。服务器与客户机通过线程连接。 1.51.5 可行性分析可行性分析 鉴于在线考试系统的美好前景,本项目的设计目标是实现考试系统,并且 能够实现其相应的业务功能,例如登录功能,考试功能,管理员修改难度系数, 考试时间,题目数,考试得分等。此项目需要实现如下功能。 1、登录功能:用户能够准确无误的登录考试系统。二、考试功能:实现基 基于 Java 的在线考试系统的设计和实现 4 本的业务逻辑。三、查看分数:在考试结束后,考生能够看到考试分数。四、 管理员可以根据系统定义修改难度系数和题目数。五、题目切换:实现上一题 与下一题的切换。六、其他功能还有计时功能等。 第二章第二章 系统设计相关技
17、术介绍及开发环境要求系统设计相关技术介绍及开发环境要求 2.1MVC2.1MVC 模式的介绍模式的介绍 2.1.12.1.1MVC 模式的概述模式的概述 MVC 是 模型(Model),视图(View)和控制(Controller)的缩写。其中 Model 层用来实现系统中的业务逻辑,通常可以用 JavaBean 来实现; View 层 用于与用户的交互; Controller 层连接模块与视图,它可以是用户的请求得到 恰当的视图予以显示,同时它也可以是用户的输入得到解释并将它们映射为模 型层可执行的操作1。 2.1.2MVC2.1.2MVC 的强势与劣势的强势与劣势 优点:低耦合性,使得更改
18、视图层代码就不用重新编译模型和控制器代码。 高重用性和可适用性,允许你是用各种方式的视图来访问同一个服务器端的代 码。快速的部署,使用 MVC 模式是的开发时间得到相当大的缩减2。 缺点:MVC 的缺点是它没有明确的定义,不容易理解。 2.22.2 J JAVAAVA组件组件 J JAVAAVAB BEANSEANS 2.2.12.2.1 什么是什么是 JavaBeans JavaBeans 是一种企业级开发中的技术规范,凡是遵循该规范的类都称为 JavaBeans 类,又叫做 pojo 类。该规范主要包含以下几点: 1.所有的类都必须实现序列化接口。 2.所有的属性尽量定义为私有属性。 3.
19、所有的方法定义为公有方法。 4.提供属性的 get 和 set 方法,通过该方法可以访问属性。 基于 Java 的在线考试系统的设计和实现 5 2.32.3 JavaSEJavaSE 概述概述 JavaSE 是 java Standard edition 的缩写。JavaSE 就是 Java 的标准版,主要 用于桌面应用软件的编程。JavaSE 包含那些构成 Java 语言核心的类。比如: 数据库连接、接口定义、输入/输出、网络编程3。 JavaSE 具有以下几个特点:第一,它比较容易开发;第二,它启动时间短, 内存占用较少;第三,它还有元数据特性。 2.42.4 关于关于 S STRUTST
20、RUTS 2.4.12.4.1 Struts 简介简介 Struts 是开源软件。使用 Struts 的目的是为了帮助我们减少在运用 MVC 设 计模型应用的时间。Struts 已逐步越来越多运用于商业软件,是一种非常优秀的 JavaSE MVC 实现方式4。 2.4.22.4.2 Struts 的主要功能的主要功能 1.Struts 包含一个 controller servlet,能够将客户端的请求发送给 Action 对 象。 2.它提供了一系列实用对象:通过 Java reflection 自动处理 JavaBeans 属性、 提示和消息。Struts 提供了它自身的控制器组件,并且整合
21、了其他技术,用来提 供模型和视图。Struts 正逐步被运用,是性能良好的 MVC 实现方式5。 2.4.32.4.3 Struts 工作原理工作原理 这里我们先来介绍一下 MVC,MVC 是 Model-View-Controller 的缩写。它 作为称用得设计模式得到了广泛的运用。MVC 使数据接口和逻辑接口连接减 弱,并且使得视图更加富有变化性。MVC 使得程序逻辑清晰,更容易被人理解。 MVC 的工作原理如下 2-1 所示: 基于 Java 的在线考试系统的设计和实现 6 2-12-1MVC 的工作原理的工作原理 接下来,我们说一下 Struts,它作为 MVC 的一种实现。Strut
22、s 继承了 MVC 的各项特性,具有 MVC 的特点。并根据 JavaSE 的特点,做出了相应的更改。 Struts 的工作原理,如下图 2-2 所示: 2-22-2Struts 的工作原理的工作原理 2.52.5 关于关于 S SWINGWING 2.5.12.5.1 Swing 简介简介 Swing 是建立在 AWT 之上的组件集。除提供了 AWT 所缺少的、大量的附 加组件外,Swing 还提供了替代 AWT 重量组件的轻量组件。AWT 中文含义抽 象窗口工具包(Abstract Window Toolkit)功能是 Java 开发用户界面最初的工具包。 Swing 还包括了一个用于实现
23、插入式界面样式特性的图形用户界面的下层构件。 因此,在不同的平台上,Swing 组件都能保持组件的界面样式特性。例如双缓 冲、调试图形和文本编辑包等6。 基于 Java 的在线考试系统的设计和实现 7 2.5.22.5.2 为什么需要为什么需要 Swing Swing 设计者采用的设计模式:模型视图控制器(MVC)模式。 该设计模式遵循一个基本原则:它限制一个对象的功能的数量。防止一个按钮 完成所有的事情。而应该分配内容,比如说让一个对象负责组件的观感,另一 个对象负责存储内容。 当程序员想要使用 Swing 组件来完成开发时,不需要考虑 MVC 体系结构。 每个用户界面的元素都有一个包装器的
24、类来保存模型和视图。当需要查询所需 要的内容时,包装器类会向模型询问并且返回所要的内容。当想要改变视图时 (例如,在一个文本域中改变光标位置的时候) ,包装类会把此请求转发给视图。 然而,有时候包装器转发命令并不得力。在这种情况下,就必须直接地与模型 进行交互。 2.5.32.5.3 Swing 带给我们什么带给我们什么 MVC 模式吸引广大 Swing 设计者原因是这种模式允许实现可插观感。每个 按钮或者文本域的模型是独立于观感的。当然可视化表明完全依赖于特殊观感 的用户界面的设计,并且控制器可以改变它。比如,在一个语音控制设备中, 控制其需要处理的各种事件与使用键盘和鼠标的标准计算机完全不
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 JAVA 在线 考试 系统 设计 实现 毕业论文
链接地址:https://www.31doc.com/p-3920835.html