1、陕西理工学院毕业设计 第 I 页 共 91 页 毕业 论文 设计 题 目 基于 B/S 模式的在线考试系统的设计与实现 学生姓名 刘旭 学号 1109064040 所在院 (系 ) 数计学院 专业班级 信息与计算科学 1102 班 指导教师 赵晖 完成地点 陕西理工学院 2014 年 5 月 25 日 陕西理工学院毕业设计 第 II 页 共 91 页 基于 B/S 模式的在线考试管理系统的设计和实现 作者:刘旭 (陕西理工学院数学与计算机科学学院信息与计算科学专业信计 1102 班 ,陕西 汉中 723000) 指导教师:赵晖 摘要 随着计算机技术的发展和互联网时代的到来,人们已经进入了信息时
2、代,也有人称为数字化时代。在数字化的网络环境下,学生希望得到个性化的满足,根据自己的情况进行学习,同时也希望能够得到科学的评价。老师希望有效改进现有的考试模式,提高考 试工作的效率,教育机构也希望给网上的学生提供更全面灵活的服务,以更准确地对学生进行跟踪和评价。在线考试系统正是迎合这一需求而开发的,它旨在探索一种以互联网为基础的考试模式。通过这种新的模式,为学校创造一种新的考试环境,使考务管理更方便顺利,提高考试工作效果和标准水平,使学校管理者、教师和学生可以随时随地通过网络进行考试工作。 本论文研究了一种基于 JSP 的在线考试系统。 该系统主要包括 学生子 系统 模块、教师系统模块和 管理
3、 员 子系统模块。学生模块实现的功能 主要包括: 学生登录、学生考试、和管理功能。教师模块实现的功能主 要包括:教师注册、添加科目、试卷管理、题库管理、试题管理、在线评卷、成绩管理和个人信息管理 .本系统采用 JSP 和 MySql 为开发工具,具有扩展性。 关键字 在线考试 ;JAVA;MySQL;MyEclipse;TOMCAT 陕西理工学院毕业设计 第 III 页 共 91 页 The Design and Implement of The Logistics Management System Based on B/S Model Liu Xu (Grade11,Class02,Inf
4、ormation and computing science Major, Mathematics and Computing Science Dept., Shaanxi University of Technology, Hanzhong 723000,Shaanxi) Tutor: Zhaohui Abstract: With the development of computer technology and the Internet era, it has entered an information age which is also known as the digital ag
5、e. In this digital network environment, students prefer personalized communication space to meet, to learn according to their own situation, and also needs a scientific evaluation. The teachers want to effectively improve the current test model to increase the examination efficiency. Education insti
6、tutions want to give students a more comprehensive flexible service to more accurately track and evaluate students. Online examination system is developed to meet this demand targeting to an Internet-based test model. With this new model, schools can create a new test environment for the successful
7、test management and to improve the effectiveness and examination standard level, so that school administrators, teachers and students can work anytime, anyw here via the Internet test. In this paper, an online examination system is developed based on JSP. The system includes subsystem modules of stu
8、dents, teachers and administrators sub-modules. The student module features include: student login, student exams, check grades, student messages and personal information management functions. The teacher module features include: teacher registration, adding courses, paper management, exam managemen
9、t, test management, online marking, performance management, message management, announced management and personal information management. The manager module features include: bulletin management, other management systems, professional management, class management, student management, teacher managem
10、ent and password change functionality. The system uses JSP and MySql as the development tools which are more extensible. Key Words: Online Exem System, JAVA, JSP, MySql 陕西理工学院毕业设计 第 IV 页 共 91 页 目 录 1 引言 . 6 1.1 研究背景 . 6 1.2 研究意义 . 6 1.3 研究现状 . 7 1.3.1 国外研究现状 . 7 1.3.2 国内研究现状 . 7 1.4 研究的主要内容 . 7 1.5
11、本文的组织 . 7 2 系统相关技术 . 8 2.1 JSP 技术 . 8 2.2 JAVA 语言 . 9 2.3 数据库连接 . 10 2.4 MYSQL数据库 . 10 2.5 SERVLET 技术 . 10 3 系统需求分析 . 11 3.1 系统概述 . 11 3.2 可行性分析 . 11 3.3 技术可行性 . 11 3.4 操作可行性 . 11 3.5 社会可行性 . 11 4 系统概要设计 . 12 4.1 系统功能模块图 . 12 4.1.1 学生子系统模块 . 12 4.1.2 教师子系统模块 . 14 4.2 数据库设计 . 16 4.2.1 数据字典 . 16 4.2.2
12、 数据表结构 . 16 4.2.3 数据表关系图 . 19 5 系统详细设计 . 20 5.1 数据库连接 . 20 5.2 系统架构搭建 . 20 5.2.1 系统目录结构 . 20 5.2.2 系统访问权限设置 . 21 5.2.3 系统主要功能实现 . 21 5.3 系统功能模块的设计与实现 . 22 5.3.1 系统登录界面 . 22 5.3.2 系统子模块 . 22 6 系统部分功能测试 . 27 6.1 系统运行环境 . 27 6.2系统部分功能测试 . 27 陕西理工学院毕业设计 第 V 页 共 91 页 7 总结 . 31 7.1 总结 . 31 7.2 未来工作展望 . 31
13、 参考文献 . 32 致 谢 . 33 陕西理工学院毕业设计 1 引言 1.1 研究背景 传统的考试从出题、组卷、印刷,到试卷分发、答题、收卷,再评卷、公布成绩,整个过程都完全靠人工完成,周期长,工作量大, 容易出错,还要有适当的保密工作,使得整个考试的成本较大。所以,实现无纸化、网络化、自动化的计算机考试系统,具有深远的现实意义和实用价值。 在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习之后及时检验自己的学习效果,以发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生
14、成、试卷的提交、成绩的批阅等都在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的是精 心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。 目前,网络应用软件运行的模式主要有二类: C/S 模式, B/S 模式。 C/S 结构在技术上很成熟,它的主要特点是交互性强、具有安全的存取模式、网络通信量低、响应速度快、利于处理大量数据。但是该结构的程序是针对性开发,变更不够灵活,维护和管理的难度较大。通常只局限于企业内部网。并且,由于该结构的每台客户机都需要安装相应的客户端程序,分布功能弱且兼容性差,不能实现快速部署安装和配置
15、,因此缺少通用性,具有较大的局限性。要求具有一 定专业水准的技术人员去完成。 B/S 结构的主要特点是分布性强、维护方便、开发简单且共享性强、总体拥有成本低。但数据安全性问题、对服务器要求过高、数据传输速度慢、软件的个性化特点明显降低,这些缺点是有目共睹的,难以实现传统模式下的特殊功能要求。例如通过浏览器进行大量的数据输入或进行报表的应答、专用性打印输出都比较困难和不便。此外,实现复杂的应用构造有较大的困难。虽然可以用 ActiveX、 Java 等技术开发较为复杂的应用,但是相对于发展已非常成熟 C/S 的一系列应用工具来说,这些技术的开发复杂,并没有完全成熟的技术 工具供使用 。 。 另外
16、,考试系统的软件也必将不断的更新;同时软件产品本身就要经过一个不断自我完善的过程。 基于上述考虑,用 B/S 模式来设计考试系统比较合适,服务器端我们采用 MySql 数据库系统 JSP 技术来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时可进行远程系统维护和管理。 1.2 研究意义 网络考试系统具有降低考试成本,解决繁重的考务工作的优点。它可以免去教师大量的临考工作 , 试卷可以根据题库中的内容即时生成 ; 教师也无须去做考后的阅卷、统计、分析工作,计算机可以自动判卷,直接把成绩送到数据库中进行 统计、排序、汇总。实现无纸化考试,大大提高了工作效率 。 同时,试卷 的题目 是
17、随机组成的,不存在试卷的泄密和考试作弊问题,使考试的公平性、答案的安全性得到有效的保证 。 目前,基于网络考试面向的主要是社会上的培训认证考试 ( 如微软的各种认证考试 ) 和远程教育的考试。一个成功的基于 WEB 的考试,需要一个好的网络环境 , 一个好的考试平台和一个好的题库。但一个真正的智能化的基于 WEB 的考试系统的实现是 一 个复杂的过程,考试平台和题库的研究要依靠软件开发专家、被 考 学科专家和精通考试理论和命题的专家三者的合作。因而对于有极大市场的社 会认证考试,必然会走上专业化的道路。 陕西理工学院毕业设计 1.3 研究现状 1.3.1 国外研究现状 国际上,基于网络的考试蓬
18、勃发展,对于题库建设的理论研究不断深入,实用考试系统也层出不穷。美国心理协会在 1986 年出版了关于如何开发、使用计算机化考试以及解释考分的指南,成为了考试和软件开发者的事实标准。投入实际使用的例子有, 1993 年美国教育考试中心( Eraduade Record examination 简称 ETS)考试;从 1994 年开始,美国护理证书考试完全在计算机上进行,等等。目前,国外许多大型测验出版机构、地区教育主管部门和专业资格认证机 构都以某种测量理论为指导建立题库、设计考试系统,并进行各项相关研究。 1.3.2 国内研究现状 在我国,计算机考试系统和题库的理论研究和实践应用起步比较晚。
19、但发展也比较迅速,研究和开发活动比较活跃。清华大学、上海交通大学等高校都组织力量致力于实用考试系统的研究和开发工作。其中,使用在线考试影响较大的考试有: 1994 年开始,国家教务组织的全国计算机等级考试; 1996 年,教育部考试中心举办的全国计算机应用技术证书( National Aplide Information Technology Certificate 简称 NIT),等等。 1.4 研究的主要内容 在线考试系统主要研究设计并实现学生模块、教师模块和系统管理员模块的功能操作。学生模块分为:学生登录、学生考试、成绩查询、学生留言和个人信息管理功能;教师模块分为:教师注册、添加科目、
20、试卷管理、题库管理、试题管理、在线评卷、成绩管理、留言管理、公告管理和个人信息管理;系统管理员模块为分:公告管理、系别管理、专业管理、班级管理、学生管理、教师管理和密码修改功能。 1.5 本文的组织 本文主要介绍在线考试系统的分析、设计与实现。 第 1 章主要介绍了在线考试系统的研究背景、意义、现状和内容; 第 2 章主要介绍了在线考试系统的实现所用到的技术及其概念; 第 3 章主要介绍的是对该系统的需求分析; 第 4 章概要介绍了系统的整体结构设计; 第 5 章则进一步介绍了系统的详细设计,架构搭建及功能的实现; 第 6 章主要是系统部份功能的测试记录; 第 7 章为本文的总结,主要介绍了该
21、系统所用技术及遇到的问题,和实现的功能及有待完善的功能。最后介绍系统设计实现时用到参考文献和通过谢词向帮助过我的人表示谢意。 陕西理工学院毕业设计 2 系统相关技术 2.1 JSP 技术 JSP1是由 SunMicrosystems 公司倡导、许多公司 参与一起建立的一种动态技术标准。在传统的网页 HTML 文件( *.htm, *.html)中加入 Java 程序片段( Scriptlet)和 JSP 标签,就构成了 JSP 网页 java 程序 片段可以操纵数据库、重新定向网页以及发送 E-mail 等,实现建立 动态网站 所需要的功能。所有程序操作都在 服务器 端执行,网络上传送给客户端
22、的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持 Java,也可以访问 JSP 网页。 JSP 全名为 Java Server Pages,其根本是一个简化的 Servlet 设计,他实现了 Html语法 中的 java 扩张(以 形式)。 JSP 与 Servlet 一样,是在服务器端执行的。通常返回给客户端的就是一个 HTML 文本,因此客户端只要有浏览器就能浏览。 Web 服务器在遇到访问 JSP 网 页的请求时,首先执行其中的 程序段 ,然后将执行结果连同 JSP 文件中的 HTML代码一起返回给客户端。插入的 Java 程序段可以操作数据库、重新定向网页等,
23、以实现建立 动态网页 所需要的功能。 通常 JSP 页面很少进行数据处理,只是用来实现网页的静态化页面,只是用来提取数据,不会进行业务处理。 JSP 技术使用 Java 编程语言 编写类 XML的 tags和 scriptlets,来封装产生动态网页的处理逻辑。网页还能通过 tags和 scriptlets 访问存在于服务端的资源的 应用逻辑 。 JSP 将网页 逻辑与 网页设计的显示分离,支持可重用的基于 组件 的设计,使基于 Web 的应用程序的开发变得迅速和容易。 JSP( JavaServer Pages)是一种 动态页面技术 ,它的主要目的是将表示逻辑从 Servlet 中分离出来
24、JSP 页面由 HTML 代码和嵌入其中的 Java 代码所组成。服务器在页面被客户端请求以后对这些 Java 代码进行处理,然后将生成的 HTML 页面返回给客户端的浏览器。 Java Servlet是 JSP 的技术基础,而且大型的 Web 应用程序的开发需要 Java Servlet和 JSP 配合才能完成。 JSP 具备了 Java 技 术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 自 JSP 推出后,众多大公司都支持 JSP 技术的服务器,如 IBM、 Oracle、 Bea 公司等,所以 JSP 迅速成为商业应用的服务器端语言。 JSP 与 w
25、ebServer 的结合关系如图 2-1 所示 图 2.1 JSP 与 webServer 的结合关系 陕西理工学院毕业设计 JSP 指令控制 JSP 编译器如何去生成 servlet,以下是可用的指令: 包含指令 include 包含指令通知 JSP 编译器把另外一个文件完全包含入当前文件中。效果就 好像被包含文件的内容直接被粘贴到当前文件中一样。这个功能和 C 预处理器所提供的很类似。被包含文件的扩展名一般都是 “jspf“(即 JSPFragment, JSP 碎片): 页面指令 page 页面指令有以下几个选项:如表 2-1 所示 表 2-1 page 页面指令 import 使一个
26、JAVA 导入声明被插入到最终 页面文件 。 contentType 规定了生成内容的类型。当生成非 HTML 内容或者当前 字符集 character set 并非默认字符集时使用。 errorPage 处理 HTTP 请求时 ,如果出现异常则显示该 错误提示信息页面 isErrorPage 如果设置为 TRUE,则表示当前文件是一个错误提示页面 isThreadSafe 表示最终生成的 servlet 是否安全线程( thread,safe,) import 使一个 JAVA 导入声明被插入到最终 页面文件 。 contentType 规定了生成内容的类型。当生成非 HTML 内容或者当前
27、 字符集 character set 并非默认字符集时使用。 JSP动作是一系列可以调用内建于 网络服务器 中的功能的 XML 标签。 JSP 提供了以下动作: 如下表 2-2所示 表 2-2 Jsp 标签 jsp: include 和子过程类似, JAVA SERVLET 暂时接管对其它指定的 JSP 页的请求和响应。当处理完该 JSP页后就 马上把控制权交还当前 JSP页。这样 JSP代码就可以在多个 JSP页中共享而不用复制。 jsp: param 可以在 jsp: include, jsp: forward 或 jsp: params 块之间使用。指定一个将加入请求的当前参数组中的参数
28、。 jsp: forward 用于处理对另一个 JSP或 SERVLET的请求和响应。控制权永远不会交还给当前 JSP页。 jsp: plugin Netscape Navigator 的老版本和 Internet Explorer 使用不同的标签以嵌入一个applet。这个动作产生为嵌入一个 APPLET 所需要的指定浏览器标签。 jsp: fallback 如果浏览器不支持 APPLETS 则会显示的内容 jsp: getProperty 从指定的 JavaBean 中获取一个属性值 jsp: setProperty 在指定的 JavaBean 中设置一个属性值 2.2 JAVA 语言 它
29、最初被命名为 Oak,目标设定在家用电器等小型系统的 编程语言 ,来解决诸如电视机、电话、闹钟、 烤面包机 等家用 电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高, Sun 放弃了该项计划。就在 Oak 几近失败之时,随着互联网的发展, Sun 看到了Oak 在计算机网络上的广阔应用前景,于是改造了 Oak,以 “Java” 的名称正式发布。 Java 编程语言的风格十分接近 C、 C+语言。 Java 是一个纯的面向对象的程序设计语言,它继承了 C+ 语言 面向对象技术 的核心, Java 舍弃了 C +语言中容易引起错误的指针(以引用取代)、运算符重载( operator
30、overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为 内存管理 而担忧。在 Java SE 1.5 版本中, Java 又引入了泛型编程( Generic Programming)、类型安全的 枚举 、不定长参数和自动装 /拆箱等语言特性。 Java 不同于 一般的 编译执行陕西理工学院毕业设计 计算机语言 和解释执行计算机语言。它首先将源代码编译 成二进制字节码 (bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了 “ 一次编译、到处执行 ” 的跨平台特性。不过,每次的编译执行需要
31、消耗一定的时间,这同时也在一定程度上降低了 Java 程序的 运行效率 。但在 J2SE 1.4.2 发布后, Java 的执行速度有了大幅 提升。与传统程序不同, Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java 软件必须相互兼容。 “Java 语言靠群体的力量而非公司的力量 ” 是 Sun 公司的口号之一,并获得了广大软件开发商的认同。这与 微软公司 所倡导的注重精英和封闭式的模式完全不同。 Sun 公 司对 Java 编程语言的解释是: Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植
32、、高性能、多线程和动态的语言。 Java 平台是基于 Java 语言的平台。这样的平台目前非常流行,因此 微软公司 推出了与之竞争的 .NET 平台以及模仿 Java 的 C#语言。 2.3 数据库连接 JDBC( Java Data Base Connectivity, java 数据库连接 )是一种用于执行 SQL 语句的Java API,可以为多种关系数据库提供统一访问,它由一组用 Java 语言编写的类和接口组成。 JDBC 提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用 程序 , JDBC 实现了所有这些面向标准的目标并且 具有简单、严格类型定义且
33、高性能实现的接口。 2.4 Mysql 数据库 SQL Server 是一个全面的、集成的、端到端的数据解决方案,它为组织中的用户提供了一个更安全可靠和更高效的平台用于企业数据和 BI 应用。 MySql 为 IT 专家和信息工作者带来了强大的、熟悉的工具,同时降低了在从移动设备到企业数据系统的多平台上创建、部署、管理和使用企业数据和分析应用程序的复杂性。通过全面的功能集、与现有系统的互操作性以及对日常任务的自动化管理能力, MySql 为不同规模的企业提供了一个完整的数据解决方案。 MySql 数据引擎是本企业数据管理解决方案的核心。此外 MySql 结合了分析、报表、集成和通知功能。 2.
34、5 Servlet技术 Servlet2( Server Applet),全称 Java Servlet,未有中文译文。是用 Java 编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态 Web 内容。狭义的 Servlet是指 Java 语言实现的一个接口,广义的 Servlet 是指任何实现了这个 Servlet 接口的类,一般情况下,人们将 Servlet 理解为后者。 Servlet 运行于支持 Java 的应用 服务器中。从实现上讲, Servlet 可以响应任何类型的请求,但绝大多数情况下 Servlet 只用来扩展基于HTTP 协议的 Web 服务器。最早支持 Servlet 标准的是 JavaSoft的 Java Web Server。此后,一些其它的基于 Jav 的 Web 服务器开始支持标准的 Servlet。
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。