基于JAVA 的网络在线考试的体系结构和具体设计.doc

上传人:精*** 文档编号:831550 上传时间:2023-09-06 格式:DOC 页数:57 大小:1.13MB
下载 相关 举报
基于JAVA 的网络在线考试的体系结构和具体设计.doc_第1页
第1页 / 共57页
基于JAVA 的网络在线考试的体系结构和具体设计.doc_第2页
第2页 / 共57页
基于JAVA 的网络在线考试的体系结构和具体设计.doc_第3页
第3页 / 共57页
基于JAVA 的网络在线考试的体系结构和具体设计.doc_第4页
第4页 / 共57页
基于JAVA 的网络在线考试的体系结构和具体设计.doc_第5页
第5页 / 共57页
点击查看更多>>
资源描述

1、重庆邮电大学本科毕业设计(论文) 摘 要本文阐述了一个基于 WEB 的网络在线考试的体系结构和具体设计以及实现过程。系统采用的三层体系结构:表示层、业务层、数据库操作层开发,即前端由JSP 网页实现表现逻辑,中间使用 Java Bean 的组件实现系统内部复杂的业务逻辑,后端使用 SQL Server 2000 数据库实现数据逻辑。系统提出了网络在线考试系统的解决方案,实现了题目分类的特殊原则:考试题目,试题类型,分数定制等。系统可以完成试题的随机抽取,试卷的自动生成。试卷的发布等由后台控制中心来完成,考试结束时系统可以根据考生的答题情况给出分数。系统采用 B/S 模式设计,符合目前的网络趋势

2、,具有可操作性。系统在 Windows XP 平台下开发成功。【关键字】题库管理 在线考试 JSP SQL Server 2000ABSTRACTThis article has explained a system structure based on exam administrative system of WEB and designss and realizess process. Three layers of system structure that the system adopts:JSP-JavaBean-SQL Server 2000 develops, and wit

3、h namelying bow is realized the show logic by JSPs page, and the vocational work logic complicated inside the package realization system of Java Bean is used in the centre, and SQL Servers 2000 data bases realizations data logics are used to the back end.The System puts forward the complete settleme

4、nt scheme of online examination system of cross-domain communication, and realized the classified special principle of title: the fraction etc is had something made to order by proposition person oneself degree of difficulty examination questions type examination title. The system can accomplish hav

5、ing something made to order of examination paper, the voluntarily formation of examination paper, and can look at in advance to the examination paper, and revise. The examination paper issues when accomplishing by the control center. Supervises center control at candidate for an entrance examination

6、s examination course by the examination, also can be to candidate for an entrance examination the examination state is prohibited or is permitted controls, the examination end is given a mark, and the system can be according to the answer circumstances of candidate for an entrance examination to a f

7、raction. The system adopts B / Ss model design, and can add up the functions such as analysis etc to the frequency that the examination questions were drawn. The system developed successfully under the terrace of Windows XP.【Key words】Question Management Exam On-line JSP SQL Server 2000目 录摘 要IABSTRA

8、CTII目 录III前 言1第一章 系统概述3第一节 课题背景与意义3一、课题开发背景3二、课题开发意义3第二节 课题开发工具与环境4一、JAVA和JSP技术简介4二、SQL Server 2000 服务器SQL Server概述5三、Tomcat 6.0服务器架构6四、总体开发7第二章 系统分析8第一节 系统概述8一、系统分析原则与方针8二、系统需求8第二节 系统功能分析9一、 可行性分析:9二、 具体功能分析:9第三节 本章小结10第三章 系统设计11第一节 数据库设计11一、数据库总体设计11二、数据库概念设计11三、数据库逻辑设计13第二节 系统总体设计17一、总体设计17二、系统逻辑

9、处理18三、总体流程图19第三节功能设计21一、 系统登录21二、 考生注册22三、 在线考试模块22四、 后台管理模块24第四节 本章小结25第四章系统实现与调试26第一节 系统实现概论26一、 结构化程序编码原则26二、 系统主界面26三、 系统功能菜单27第二节 系统功能实现27一、 文件结构图27二、 文件详细结构图28三、 系统具体文件28第三节 关键技术实现31一、web.xml31二、 数据库db_netExam连接部分31第四节 调试过程中的常见错误32一、JDK配置错误32二、SQL空指针异常33三、数据库连接错误33第五节 本章小结34第五章系统测试及结果分析35第一节 系

10、统测试综述35一、系统测试综述35二、具体功能模块测试35第二节 本章小结39第六章结束语40致 谢41参考文献42附 录43一、英文原文:43二、英文翻译:4941前 言近几年来,随着Internet的崛起,远程教育开始发展,普及网络教育的呼声日益高涨,其势头不亚于电子商务。联合国教科文组织1998年在其一项调查报告中指出:无论是发达国家还是发展中国家,都不同程度存在教育滞后于现实需要的问题,特别是第三世界国家。而普及远程教育,尤其是网络教育,不仅是解决这一问题的有效途径,而且将成为革新传统教育模式的重要动力。中国的网络教育也随Internet的发展而同步增长,同时,网络教育也为中国的教育事

11、业开辟了新的天地,其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教

12、师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。伴随着远程教育的蓬勃发展,作为教学当中不可分割的一部分的在线考试系统也得到了当今远程教育研究者的关注,考试是考察学生对所学习知识的接受和理解程度的重要手段,无纸化的考卷,考试的随时性,随地性,这些特点都是研究并开发网络考试系统主要的原因,网络考试系统远远超越了传统考试固定时间,固定地点的考试模式的限制,将给学生和老师带来极大的便利。随着Internet的相关技术的发展,特别是Web技术的出现,人们开始致力于研究和开

13、发基于Internet考试系统,这也大大推动了远程教育的发展。术语列表:JSP:(Java Server Pages),JSP是一种基于Java的技术,用来产生跨平台和跨Web服务器的动态页面。JDBC:(Java Database Connectivity),Java数据库连接。它主要是一套让你访问数据库的API,程序人员可以利用JDBC API来执行SQL语句。Servlet: Servlet可以称之为“服务器小程序”,与Java application不同,它没有main方法,而是用一些特定的方法用于启动、执行和退出。通过使用Servlet,可以与运行与客户端的Applet进行交互,也可

14、以直接与HTML页进行交互。JavaBeans: JavaBeans是可复用的平台中立的软件组件,可以在软件开发工具中被直观地操作。应用程序开发者可以通过支持JavaBeans的开发工具,直接使用现成的JavaBeans,也可以在开发工具容器中,对组件进行必要的修改、测试而不必编写和编译程序。在Java模型中,组件可以修改或与其他组件组合以生成新组件或完整的应用程序。HTML:(Hypertext Markup Language)超文本标记语言,它是组织多媒体文档的重要语言,它不仅用来编写Web网页,而且可以使用它来制作光盘上的多媒体节目。HTML可用来编排文档、创建列表、建立链接等等。XML

15、:(extensible Markup Language)可扩展标记语言,它是一种具有数据描述功能(Meta-language)、高度结构性及可验证性的语言。SQL:(Structured Query Language),结构化查询语言。SQL语言地任务就是与各种数据库建立关系,SQL语言是关系型数据库的标准语言,大多数关系型数据库管理系统都支持SQL语言并采用了SQL的语言标准。MySQL:MySQL是一个可用于各种流行操作系统平台的关系数据库系统,它具有客户机/服务器体系结构的分布式数据库管理系统。按照使用又可以分为DML(Data Manipulation Language),即数据操作

16、语言和DDL(Data Definition Language)。第一章 系统概述第一节 课题背景与意义一、课题开发背景传统的考试从出题、组卷、印刷,到试卷分发、答题、收卷,再到判卷、公布成绩,整个过程都需要人工参与,周期长,工作量大,容易出错,还要有适当的保密工作,使得整个考试的成本较大。所以,实现无纸化、网络化、自动化的计算机考试系统,具有深远的现实意义和实用价值。网络考试系统是传统考场的延伸,它可以利用网络的无限广阔空间,随时随地的对学生进行考试,加上数据库技术的利用,大大简化了传统考试的过程。因此网络考试系统是电子化教学不可缺少的一个重要环节。网络考试系统的实现技术有多种,可以采用传统

17、的客户机/服务器型的 MIS 型架构,Web 技术超越了传统的客户机/服务器两层结构,采用了三层体系结构:用户界面层/事务层/数据库层,因此 Web 结构有着更好的安全性,在用户机上不需要安装任何应用程序,应用程序可以安装在事务层所在的计算机上,试题存放在数据库服务器上,当然,事务层和数据库可以是同一台机器(如果条件允许,还是应该把这两层分开在不同的计算机上),所以,本文所讨论的考试系统采用Web技术实现。二、课题开发意义用Browser/Web模式来设计考试系统比较合适,服务器端我们采用SQL SERVER数据库系统和JSP组件来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时

18、可进行远程系统维护和管理。利用网络和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,应用JAVA Server Page 技术,开发了基于B/S模式多用户在线考试系统这一程序。它运用方便、操作简单,效率很高(同时,它要求计算机配置也很高,尤其是服务器端).基于Web技术的网络考试系统可以借助于遍布全球的因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。试卷可以根据题库中的内容即时生成,可避免考试前的压题;而且采用大量标准化试题,从而使用计算机判卷,大大提高阅卷效率;还可以直接把成绩送到数据库中,进行统计、排序等操作。考生通过姓名、准考证号码和口令进

19、行登录,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的保证。因此,采用网络考试方式将是以后考试发展的趋势。第二节 课题开发工具与环境一、JAVA和JSP技术简介1、将内容的生成和显示进行分离用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面,并使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在脚本中,所有的脚本在服务器端运行。由于核心逻辑被封装在标识和JavaBeans 中,所以 Web 管理人员和页面设计者,

20、能够编辑和使用 JSP 页面,而不影响内容的生成。在服务器 端,JSP引擎解释JSP标识和脚本,生成所请求的内容(例如,通过访问JavaBeans 组件,使用JDBC技术访问数据库或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这既有助于作者保护自己的代码,又能保证任何基于HTML的Web浏览器的完全可用性。2、可重用组件大多数 JSP 页面依赖于可重用的、跨平台的组件(JavaBeans)来执行应用程序所要求的复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者和客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们

21、现有的技能和优化结果的开发努力中得到平衡。3、采用标识Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在易用的、与JSP相关的 XML 标识中进行动态内容生成所需要的。标准的 JSP 标识能够访问和实例化JavaBeans 组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。4、适应平台几乎所有平台都支持 Java,JSPJavaBeans 几乎可以在所有平台下通行无阻。从一个平台移植到另外一个平台,JSP 和 JavaBeans 甚至不用重新编译,因为Java 字节码都是标准的与平台无关的。5、数据库连接Java 中连

22、接数据库的技术是 JDBC,Java 程序通过 JDBC 驱动程序与数据库相连,执行查询、提取数据等操作。Sun 公司还开发了 JDBCODBC bridge,利用此技术 Java 程序可以访问带有 ODBC 驱动程序的数据库,目前大多数数据库系统都带有 ODBC 驱动程序,所以Java 程序能访问诸如 Oracle、Sybase、MS SQL Server 和 MS Access 等数据库。二、SQL Server 2000 服务器SQL Server概述SQL Server 是美国Microsoft公司开发的一个关系型数据库管理系统,是目前世界上最著名的关系数据库管理系统之一。它在性能和可

23、扩展方面确立了世界领先的地位,是一套完全的数据库和数据分析解决方案,使用户可以快速创建下一代的可扩展电子商务和数据仓库解决方案。Microsoft SQL Server 2000 在数据库服务器自动调整和自动管理技术方面在数据库领域中处于领先地位,使客户可以集中精力处理商业战略上的问题,而不是去细微调整数据库服务器的各项参数。SQL Server 的主要功能:数据库管理功能作为数据库管理系统,SQL Server 自然应该具有数据库管理功能。它的数据库由包含数据的表集合和其他对象(如视图、索引、存储过程和触发器)组成,目的是为执行与数据有关的活动提供支持。存储在数据库中的数据通常与特定的主题或

24、过程相关。数据仓库功能SQL Server 2000提供了一套全新的综合分析服务系统。分析服务为商业活动提供了集成的OLAP服务和数据挖掘功能。OLAP可以通过多维存储技术对大型、复杂数据集执行快速、高级的分析工作。数据挖掘功能能够揭示出隐藏在大量数据中的倾向及趋势。SQL Server针对包括集成数据挖掘、OLAP服务、安全性服务及通过Internet对多维数据集进行访问和链接分析提供新的数据仓库功能。电子商务SQL Server 不仅提供电子商务所需的可伸缩性与可扩展性之外,还提供了丰富的数据库编程能力,以确保系统的协同工作和灵活性。SQL Server2000 不仅支持集中化数据库管理功

25、能,而且还最大程度地实现了管理与优化工作的自动化,从而,减轻了有关管理人员的负担。完备的 Web 功能SQL Server2000允许通过HTTP协议,在 Web上进行高性能、基于标准的安全访问。基于Web的客户端拥有访问关系型数据存储和访问分析服务的能力。分布式数据复制功能它可以将一个数据库中的数据复制到通过局域网、广域网或 Internet 网络连接的不同地点服务器或同一服务器中的不同数据库中,并能够自动保持这些数据同步,使各个数据库中具有相同的数据。三、Tomcat 6.0服务器架构Tomcat 6.0由Apache 组织开发的一种常用 Web 服务器,提供 Web 服务。一种 JSP

26、引擎,本身具有 Web 功能,可以作为独立的 Web 服务器使用。但是,在作为 Web 服务器方面,Tomcat 处理静态 HTML 页面时不如 Apache 迅速,也没有Apache 健壮,一般选用 Tomcat 与 Apache 结合的方式,让后者对网站的静态页面的请求提供服务,而 Tomcat 作为专用的 JSP 引擎,提供 JSP 解析,得以更好的性能。1JDK 的安装与配置(1)找到 path 变量后单击编辑按钮;弹出编辑系统变量对话框。在变 量值文本框中输入“c:jdkbin”,然后单击确定按钮。同时新建 CLASSPATH 变量;(2)在系统变量选项组中单击新建按钮,在变量名文本

27、框中输入“CLASSPATH”, 在 变量值文本框中输入“ c:jdklibtools.jar ;c:jdklibdt.jar;”然后单击确定按钮。(3)用同样的方法把 c:jdk 添加到 JAVA_HOME 环境变量中;2TOMCAT 的安装与配置在这里我们设默认安装目录为 c:Tomcat 安装完毕,更改环境变量,用同样的方法把 c:Tomcat 添加到 TOMCAT_HOME 环境变量中。启动 Tomcat,在浏览器 的地址下拉列表框中输入“http:/localhost:8080/”,如果看到的是在左上 方有一只可爱的小猫,则表示 Tomcat 安装成功。四、总体开发1、JAVA 三层

28、模式架构:界面表示层:Web 层,JSP+JavaScript+HTML(XML);业务逻辑层:JSP(JavaBeans);数据存储层:SQL SERVER 2000。2、开发工具采用 Eclipse,Dream weaver 2004 网页编辑工具 数据库 SQL Server2000,服务器:Apache Tomcat 6.0。 Java 中连接数据库的技术是 JDBC3、系统总体架构网络在线考试系统采用 B/S 结构设计用户系统考题考试管理系统Tomcat6.0以上服务器SQL Server2000 以上版本Windows XP ,2000, 98, Linux ,Unix 等版本运行

29、基于 JAVA 的强大网络功能以及 JSP 的灵活性,易维护性图1.1 系统总体架构第二章 系统分析第一节 系统概述一、系统分析原则与方针采用结构化系统分析的方法,建立新系统的逻辑模型,此模型尽量避免使用计算机术语,便于企业的计算机人员与系统开发人员的共同讨论。本系统的结构是层次化的暗盒模块结构。对高层模块,将采用以事物为中心的设计策略,把一个大的复杂的系统逐步分解成小的相对简单的暗盒模块,对低层模块,采用以变换为中心的设计策略。因此,为了提高模块的内聚性,降低模块的耦合程度,数据库的设计原则是把它作为模块间的邮政信箱,从而为实现数据共享由提高了模块的独立性,使系统具有很高的可修改性。二、系统

30、需求考生登陆系统在线考试提交显示成绩部门和管理命题人相关部门生成试卷系统控制网络在线考试是在网络上的模拟考试应用程序,它维护着一个数据库,存储着考生,题库,管理员信息,主要包括命题人出题,部门管理,系统管理,学生在线考试,自动评分以及相关的系统维护功能。题库图2.1 系统功能流程图第二节 系统功能分析一、 可行性分析:1技术可行性:本系统的配置(Tomcat 与 Microsoft SQL Server 2000)在这种中小规模的情况下能够提供较快的数据访问,技术上可行。2经济可行性:系统的配置,不需要昂贵的 EJB 服务器,除 Microsoft SQL Server 2000 外大部分软件

31、都是可以免费获得,开发成本低。3操作可行性:访问系统的主要有两种:学生,管理员。目前资源的利用情况和可操作性,只需少量的对数据库中的表的直接操作就可以实现系统的完整、稳定的运行,不会造成系统的巨大压力。二、 具体功能分析:系统前台系统后台考生注册在线考试退出系统修改个人信息成绩查询考试规则显示考试成绩自动阅卷开始考试准备考试选择考试 课程管理员信息管理考生信息管理考生成绩查询退出后台管理考试题目管理套题信息管理课程信息管理图2.2 系统功能结构图1系统前台:考生注册、查询成绩、修改个人信息、退出系统。2系统后台:管理员信息管理、考生信息管理、考生成绩查询、课程信息管理、套题信息管理、考试题目管

32、理、退出后台管理。系统后台模块大致分析:1 用户管理: (1)考生管理主要完成注册,登录系统,查询成绩,进入考试等。(2)管理员管理主要是完成系统管理员的添加,删除,权限的修改,考试的信息的维护添加,试题的管理,学生信息的查询等。2 考试管理:命题人可根据自己的权限对试题进行定制,可以对考试科目的标题,题的类型(本系统试题类型分为:单选题,多选题,判断题,填空题),题目数量,题目的问题以及选项个数,题目的难易程度,分数等进行控制,也可以根据自己的需要从现有题库中随机抽取需要的试题的类型,试题的数量,难易程度,分数等进行控制。对已经定制的试卷进行预览,并随时修改。第三节 本章小结本系统使用 JS

33、P 技术作为表现手段,服务器采用 Tomcat6.0 作为JSP引擎,系统业务逻辑由 Java Bean 组件完成,使用 JDBC-ODBC桥连接方式访问数据库。由于系统测试需要成熟的数据库支持,因此系统采用 SQL server 2000 数据库作为数据库服务器。第三章 系统设计第一节 数据库设计一、数据库总体设计本系统采用关系型数据库模式,因此数据库由若干个二维表(即数据文件)构成。本系统的数据文件全为数据数据。数据的保存方法有很多种,最长用的方式是使用DBMS(数据库管理系统)。市场上流行的 DBMS 主要有 Oracle、SYBASE、MS SQL Server、DB2、Informi

34、x 等,而 MS SQL Server 可作为中小型数据管理系统的首选。根据以上分析,本系统后台数据库决定采用 MS SQL Server 为后台数据库。本系统的数据表主要由两个部分组成:系统表和功能表。系统表是该系统中存储基本数据信息表,例如:考生信息表(tb_Student)、管理员信息表(tb_manager)。功能表是系统为了完成一定的功能,要求把一定的数据信息存储在数据库中,这就需要专门新建表来存储相应信息。例如:、课程信息表(tb_Lesson)、试题信息表(tb_Questions)、考生成绩表(tb_StuResult)、套题表(tb_TaoTi)等。二、数据库概念设计根据对系

35、统所做的需求分析和总体设计,可以规划出要使用的数据库实体分别为考生信息实体、管理员信息实体、课程信息实体、套题实体、考试题目实体和考生成绩实体。1、考生信息实体:考生信息实体包括编号、姓名、密码、性别、注册时间、提示问题、问题答案、专业和身份证属性。姓名身份证号码编号注册时间专业问题答案提示问题性别密码考生信息图3.1 考生信息实体图2、套题实体:套题实体包括编号、名称、所属课程和添加时间等属性。编号所属课程添加时间套题名称套题图3.2 套题信息实体图3、考试题目实体:考试题目实体包括编号、问题类型、所属课程、所属套题、选项A、选项B、选项C、选项D、添加时间、正确答案和备注等属性。编号正确答

36、案备注添加时间选项D选项C选项B选项A所属套题所属课程问题类型考试题目图3.3 考试题目实体图三、数据库逻辑设计根据概念设计,可以创建与实体对应的数据表和关系。本系统共包含6张数据表:表3.1 数据库设计所需的表表名注释tb_Lesson课程表tb_manager管理员表tb_Questions试题表tb_Student考生表tb_StuResult考试成绩表tb_TaoTi套题表各数据表的结构:1 名称:管理员信息表标识:tb_manager 数据来源:前台页面取得。表3.2管理员信息表字段名数据类型及长度说明备注IDBigint(8)准考证号码主键NameVarchar(30)姓名不允许为

37、空PWDVarchar(30)密码不允许为空图3.4 管理员信息表2名称:考生信息表标识:tb_Student数据来源:前台页面取得。表3.3考生信息表字段名数据类型及长度说明备注IDVarchar(16)准考证号主关键字NameVarchar(20)姓名不允许为空PwdVarchar(20)密码不允许为空SexVarchar(2)性别不允许为空JointimeDatetime(8)注册时间不允许为空QuestionVarchar(50)密码提示问题不允许为空AnswerVarchar(50)密码回答答案不允许为空ProfessionVarchar(30)专业允许为空cardNoVarchar

38、(18)身份证号码不允许为空图3.5 考生信息表3考生成绩表标识:tb_StuResult数据来源:前台页面取得。表3.4考生成绩表字段名数据类型及长度说明备注IDBigint(8)管理员账号主关键字StuidVarchar(16)准考证号不允许为空WhichlessonVarchar(60)所属课程不允许为空RessingleVarchar(4)单选题成绩不允许为空ResmoreDatetime(4)多选题成绩不允许为空RestotalVarchar(4)总成绩允许为空JointimeVarchar(8)注册时间不允许为空图3.6 考生成绩表4考试科目信息表标识:tb_Lesson数据来源:

39、前台页面取得。表3.5考试科目信息表字段名数据类型及长度说明备注IDBigint(8)管理员账号主键NameVarchar(60)科目名称不允许为空Jointimedatetime(8)加入时间不允许为空图3.7 考试科目信息表5套题表标识:tb_TaoTi数据来源:前台页面取得。表3.6 套题表字段名数据类型及长度说明备注IDBigint(8)套题标识主键NameVarchar(50)套题名称不允许为空LessonIDBigint(8)课程编号不允许为空JointimeDatetime(8)加入时间不允许为空图3.8 考试套题表6试题信息表标识:tb_Questions数据来源:前台页面取得

40、。表3.7试题信息表字段名数据类型及长度说明备注IDBigint(8)管理员账号主关键字SubjectVarchar(50)所属课程不允许为空Typechar(6)题目类型不允许为空JointimeDatetime(8)加入时间不允许为空LessonIDInt(4)课程编号不允许为空taoTiIDBigint(8)套题编号不允许为空optionAVarchar(50)选项A不允许为空OptionBVarchar(50)选项B不允许为空OptionCVarchar(50)选项C不允许为空OptionDVarchar(50)选项D不允许为空AnswerVarchar(10)答案不允许为空NoteV

41、archar(50)备注允许为空图3.9试题信息表数据表之间的关系设计:图3.10 各数据表之间的关系第二节 系统总体设计一、总体设计本系统设计遵循结构化设计原则:1. 模块独立性、适度性原则 模块独立的概念是模块化、抽象、信息隐蔽和局部化概念的直接结果。模块独立性是通过指定具有单一功能并且和其它模块没有过多联系的模块来实现的。模块独立性是由内聚性和偶合性两个定性指标来度量的。内聚性是度量一个模块功能强度的一个相对指标。偶合性是用来度量模块之间的相互联系的程度。模块过大时,模块的可理解性会迅速下降。另外对过大的模块分解时,也不 应降低模块的独立性。因为当对一个大的模块分解时,可能会增加模块间的

42、依赖。2. 系统结构深度、宽度、扇出、扇入适当原则 深度表示从根模块到最低层模块的层数;宽度表示控制的总分布;扇出数指由一模块直接控制的其它模块数;扇入数指有多少模块直接控制一个给定的模块。好的系统结构通常顶层扇出比较大,中间扇出比较少,底层模块大扇入。3. 模块的作用范围保持在该模块的控制范围内 模块的作用范围是指受该模块内一个判定影响的所有模块的集合。模块的控制范围是指这个模块本身以及所有直接或者间接从属于它的模块的集合。4. 系统模块的单入口,单出口原则这一准则是要防止内容耦合性。如果模块都是从顶部入口,从底部出口的话,这样系统更容易理解和维护。如可以避免病态连接(病态连接关系是指从中间

43、进入或者访问一个模块)等。5. 模块结果可预测原则如果一个模块可以当作一个黑箱,即只要输入的数据相同就产生同样的输出,这个模块的功能就是可以预测的。6. 数据一致性原则二、系统逻辑处理系统采用三层结构,在客户端用户通过浏览器完成数据下载与模拟操作,浏览器端的表现逻辑通过 JSP 网页完成。而系统内部复杂的业务逻辑主要通过Java Bean 的组件(Component)实现,Java Bean 组件在 WWW 服务器上运行,通过 JSP 返回到客户浏览器。通过表现逻辑与业务逻辑的分离,使网页内容简洁,系统的可维护性和可扩充性增强。在服务器端,系统使用 JDBC 中间件访问数据库,数据库服务器定义

44、了本系统所需要的事务逻辑和数据逻辑。图3.11 系统逻辑关系图本系统使用 JSP 技术作为表现手段,服务器采用 Tomcat 6.0 作为 JSP 引擎,系统业务逻辑由 Java Bean 组件完成,使用 JDBC-ODBC 桥连接方式访问数据库。由于系统测试需要成熟的数据库支持,因此系统采用 SQL SERVER 2000数据库作为数据库服务器。三、总体流程图1 系统业务流程图:图3.12 系统流程图2 库输出逻辑流程图图3.13库输出逻辑流程图3 Java Bean 逻辑流程图图3.14 Java Bean 逻辑流程图第三节功能设计题库管理模块包括:系统登录、考生注册、在线考试、后台管理四

45、个模块。一、 系统登录输入: 管理员账号或者学生的准考证号和对应的密码。 处理:在数据库中查询,查找该用户名是否存在,如果存在则在数据库中查找该用户名对应的密码是否正确,再根据个人的权限进入相应的业务范围和正常的流程,同时记录人员的 session 这样在没退出系统之前可以在自己的权限范围内操作,否则可能因长时间没有任何操作会被注销,需要重新登录系统如果没有找到该用户或密码错误则需要重新登录,如下图所示: 输出:相应权限的页面。图3.15 系统登录关系图二、 考生注册考生注册单元根据个人的实际情况注册主要是用来考试,对考生的自然信息没有联系,考生注册时学号和准考证号不能够重复,一个学号只能注册一次,应有相应的检测措施避免非法注册。1、设计添加注册信息的页面图3.16 考生注册2、保存考生的注册信息需要编写一个insert方法。在该方法中,首

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

当前位置:首页 > 学术论文 > 毕业设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922