1、“西安航空职业技术学院毕业设计论文在线考试系统设计与实现【摘要】本论文主要阐述了在线考试系统的设计与实现,系统分为学生端和老师端 两部分。学生端是学生考试的模块。老师端包括五大功能,即:题库管理、成 绩管理、系统管理、批卷管理、试卷管理。论文详细论述了系统的可行性分析、需求分析、详细设计及实现过程。本文根据在线考试系统的需求定义出发,使用M ysql数据库技术、J DBC开 发技术操作数据库。以J ava与Actionscript3.0为编程基础语言,flex来开 发系统界面,并使用J DBC技术连接数据库。在高校对计算机相关课程的考核,也逐渐向计算机方向发展来代替传统的 笔试与老师监考,因此
2、,开发一个在线的考试系统对于高校是很有必要的。既 可以方便的测试学生的实际操作能力,并且大大的减少了老师的工作量,减少 学生作弊情况的发生,以及可以减少老师人为阅卷的误差,并且可以简单的整 理试题,方便查询等等。关键词:在线考试系统 M ySql J ava J DBC Actionscript Flex AI R I A“西安航空职业技术学院毕业设计论文Online examination systemAbstract:Now the continuous development of information technology;businesses are using computers
3、 instead of complex human labor,significant savings in the amount of work staff and capital investments.Computer-related courses in colleges and universities for the assessment,but also gradually develop in the direction to the computer to replace the traditional written test examiners and teachers,
4、therefore,developed an online examination system for colleges and universities is necessary.Students can easily test both practical skills,and greatly reduces the teachers can reduce human error in marking,and finishing questions can be simple,easy access and so on.Based on the needs of online exami
5、nation system definition,use the Mysql database technology,JDBC database development technical operations.Java-based language for programming with Actionscript3.0,flex to develop system interfaces,and connect to the database using JDBC technology.Students and teachers end system is divided into two
6、parts side.Students end of module exam students.The teacher side,including five functions,namely:bank management,performance management,system management,batch volume management,paper management.Paper discusses in detail the feasibility analysis,requirements analysis,detailed design and implementati
7、on processKeywords:testonline MySql Java JDBC Actionscript Flex AIRIA“西安航空职业技术学院毕业设计论文目录1绪论.11.1 课题背景.11.2 本课题研究的目的及意义.11.2.1 研究目的.11.2.2 研究内容.12技术综述.22.1 C/S 结构.22.1.1使用C/S的优势.22.1.2使用C/S的劣势.22.2 J DBC.32.2.1 J DBC 的概念.32.2.2 J DBG 的任务.32.3 FLEX AI R富客户端技术.32.4 FLEX 与 J AV A 通信.42.4.1 通过 Http Servi
8、ce 与月员务器通言.52.4.2 通过 W eb Service 与服务器通信.52.4.3 通过 R emoting 与服务器端通信.52.5 ACTI 0N SCR I P T3.0 脚本语言.82.6 M YSQL.83系统分析.93.1 系统的可行性分析.93.1.1 经济可行性分析.93.1.2 技术可行性分析.93.2 系统结构图.93.3 系统流程图.103.4 系统功能需求描述.11表3-1系统功能需求图.123.5 系统5模型.123.6本章小结.134总体设计.144.1 总体设计的目的.144.2 总体设计的内容.144.2.1总体功能模块设计.144.2.2数据库结构
9、设计.144.3系统开发环境设计.184.4本章小结.185详细设计与实现.205.1前台功能.20“西安航空职业技术学院毕业设计论文5.2.1登陆模块设计.205.2.2打开试卷功能模块设计.225.2.3交卷功能模块设计.235.2 后台功能.235.2.1题库管理.235.2.2试卷管理.275.2.3成绩统计.285.2.4系统管理.305.3 技术特点.315.4 本章小结.326软件测试.336.1 软件测试的定义.336.2 常用的测试方法.336.3 系统的测试.336.4模块测试.336.5验收测试.346.4本章小结.35结束语.36谢辞.37文献.38“西安航空职业技术学
10、院毕业设计论文1绪论1.1 课题背景随着I nternet的迅速发展和广泛普及,使得考试的技术手段和载体发生了 革命性的变化。传统的考试方式一般要经过人工出卷、考生考试、人工阅卷等 过程。对于一些课程来说,随着考生数量的增加,教师出卷阅卷的工作量将会 越来越大,并且其工作十分烦琐和非常容易出错。在线考试系统课题产生的背 景是当今教育信息化的趋势及我国高校教育信息化系统的建设,目的是充分利 用学校现有的计算机软、硬件和网络资源实现无纸化考试以避免传统手工考试 的不足。与传统考试模式相比,网上考试渗入了更多的技术环节,对实现安全 性的途径、方法也提出了更高的技术要求。通过I nternet来实现网
11、上考试,是 现代教育技术的一个具体实现,具有很重要的现实意义。对一些计算机科目的考试,仅仅通过简单的笔试很难测试出学生的真实编 程水平,而且在传统的笔试方式考试中,常常会发生学生作弊的情况,因此这 种上机考试的系统对于及时,准确的测试学生的学习情况死很有必要的。1.2 本课题研究的目的及意义在线考试系统是管理题刻和考试的系统,在考试的工程中将学生的部分考 试成绩和答案提交到老师端,有老师阅卷审批汇总成绩。并且教师可以对题库 做管理。1.2.1 研究目的在线考试系统的主要目的在与简化教师的试卷以及题库的管理和学生考 试,及时准确的检测学生实践的能力,同时可以减少学校对学生考试的资金投 资,提高了
12、考试的效率并减少资源的浪费。1.2.2 研究内容在线考试系统可以分为学生端和教师端,学生端主要是单一的考试部分,教师端是对题库的管理,试卷的管理,试卷分析,成绩统计,学生的管理,和 组卷的过程。1“西安航空职业技术学院毕业设计论文2技术综述2.1 C/S结构C/S又称Client/server或客户/服务器模式。服务器通常采用高性能的P C、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、I nformix或SQL Servero客户端需要安装专用的客户端软件。2.1.1 使用C/S的优势C/S构是加世纪80年代逐渐成长起来,是在计算机网络和分布式计算基础 上的一种局域网络
13、结构模式。在C/体系结构中应用程序逻辑通常分布在客户和 服务器两端:客户机前端处理用户的界面和交互的内容,服务器后端主要用来 处理数据管理及业务逻辑,客户机和服务器既分担不同任务,又协同工作。客 户机向服务器发送服务请求,服务器接受请求进行处理,并将处理结果传回给 客户机。采用C/S体系结构具有以下优点:1)由于应用程序运行在客户机上,当需要对数据库中的数据进行操作时。客户程序自动查找服务器程序,并向其发出请求,当服务器收到该请求后,服 务器程序根据预定的规则做出应答,因此服务器运行数据负荷较轻。2)能够解决复杂的事务逻辑。3)该体系结构通过将人、物合理分配到Client端和Server端,降
14、低了系 统的通讯开销,可以充分利用两端硬件环境的优势。4)C/S技术发展历史更为“悠久”。从技术成熟度及软件设计上讲,C/S技 术应用更成熟、更可靠。2.1.2 使用C/S的劣势只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来 越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何 一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多 分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系统软件 升级时,每一台客户机需要重新安装,其
15、维护和升级成本非常高。2“西安航空职业技术学院毕业设计论文对客户端的操作系统一般也会有限制。可能适应于W in98,但不能用于 win2000或W indows XP。或者不适用于微软新的操作系统等等,更不用说Linux、Unix 等。2.2 JDBC2.2.1 JDBC的概念J DBC(J ava Data Base Connectivity)是 j ava 数据库的一种连接,它是一 种用于执行SQL语句的J ava AP I,可以为多种关系数据库提供统一访问,它由 一组用J ava语言编写的类和接口组成14 o J DBC为工具/数据库开发人员提供 了一个标准的AP I,据此可以构建更高级
16、的工具和接口,使数据库开发人员能 够用纯J ava AP I编写数据库应用程序。当J ava可以使用J DBC后,系统向各种关系数据发送SQL语句就是一件很 容易的事。换言之,当系统设置J DBC AP I后,就不必为了在访问Sybase数据 库专门写一个程序,而当系统需要访问Oracle数据库时,专门为其写另外一个 程序,或在访问I nformix数据库又编写另一个程序等等,程序员只需用J DBC AP I 写一个程序就够了,它可向相应数据库发送SQL语句的调用。同时,将J ava语 言和J DBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须编写 一遍程序就可以让它在任何平台上运
17、行,这也体现了 J ava语言“编写一次,处 处运行”的优势。2.2.2 JDBC的任务简单的说,J DBC的任务就是做三件事情:与数据库建立连接、发送SQL语 句并处理结果。在通讯网络电子计费系统中,很必然的需要和后台数据库相连 接,因为操作的最终目的是得到计费清单。J DBC如果想建立连接必须要装载驱动程序,在驱动程序装载成功后才能与 数据库建立连接。在电子计费系统中,系统在设计到过程中使用到到是Oracle 数据库,因此只要在程序中写一段可装载Oracle驱动程序的代码就可以与数据 库建立连接。2.3 Flex AIR富客户端技术1.Flex3“西安航空职业技术学院毕业设计论文Flash
18、 P layer最早为M acromedia公司产品,作为因特网页的矢量动画平 台,早期的Flash P layer主要是面向娱乐功能和多媒体应用。其后推出了 ActionScript语言作为补充,通过ActionScript可以对Flash P layer中的动 画和控件进行更为复杂的逻辑控制力2005年12月Adobe收购M acromedia公司,由此带了的巨大变革,Adobe 将其打造为新一代的R I A,同时将此版本命名为Flexo Flex是一套Adobe的 R I A技术的集合,Flex应用在多层架构中作为表示层。Flex 包括:Flex SDK Flex Builder、Fla
19、sh P layer、LiveCycle Data Service、ActionScript、M XM L。2.Adobe AirAdobe AI R(AI R=Adobe I ntegrated R untime),开发代号为 Apoll。AI R 是 针对网络与桌面应用的结合所开发出来的技术,可以不必经由浏览器而对网络 上的云端程式做控制H。一个跨操作系统运行时库,支持开发人员组合使用HTM L、AJ AX、Adobe Flash 和Adobe Flex技术将其部署到桌面。提供了一个跨操作系统的单一应用程序 安装程序。3.AM FAM F是Action M essage Format的缩写
20、,是Adobe公司定义的协议,AM F是 LCDS(blazeDS)与前端Flex应用通信的方式之一,BlazeDS和前端通信还可以 采用SOAP或HTTP等其它协议。与这些通信方式不同,AM F采用二进制的编码 方式,并采用Z lib对消息进行压缩,AM F消息体的大小只有基于XM L协议的十 分之一。因此在需要大量传输消息的场合,和纯文本协议相比,AM F是一种高 效率的传输方式。同时AM F也为开发者提供了一种便利而快速的通信开发接口,它可将前端Flex中本地对象(例如:Obj ect、ArrayDate、XM L等)传给Server 端时自动适配成Server端适当的对象。例如:如果S
21、erver端是P HP应用,则 AM F会自动转译为P HP的Associative Array;如果Server端是J ava应用,则 AM F将其转换为J ava的数组。2.4 FI ex 与 java 通信Flex与j ava通信常用的有三种方式,分别是Http Service、W eb Service 和R emoting,其中R emoting方式最为常用这里只详细介绍R emo ting的连接方 式。数据具有流动性,数据传输是指根据用户控制传递至指定目的地。数据交 互是指Flex与其他程序进行数据交换,包括传递数据给其他程序和接收其他程 序返回的数据4“西安航空职业技术学院毕业设计
22、论文2.4.1通过Http Service与服务器通信mx:HTTP Service组件可与所有的HTTP程序交互。例如,ASP、ASP.N et、J SP、P HP 等。网址带参方式的优点是传参简单,但缺点是参数必须先转化为字符串类型,因为网址中只能是字符串类型。另外,若传递的参数较多,网址字符串就会变 得很长。使用网址带参方式能把Flex应用程序中的数据传递给HTTP程序。HTTP程 序接收数据后进行处理,并返回Flex可识别的数据类型。mx:HTTP Service组件返回的数据存储于R esultEvent类中。使用 mx:HTTP Service组件的result事件可处理HTTP程
23、序返回的数据。2.4.2通过Web Service与服务器通信W eb Service是一种在互联网中提供服务的技术。W eb Service技术标准由 各大软件开发商制定,主要解决了不同开发语言间的沟通问题。例如,.N et程 序调用W eb Service服务,而此W eb Service服务是由J ava语言开发的。W eb Service具有通用性。不论用何种语言开发的W eb Service服务,调 用的结果都是一致的。这是因为W eb Service有自身的标准,与开发语言无关。用户可使用几乎任何语言调用W eb Service服务,只要能找到W eb Service服 务并传递的
24、参数正确。mx:W ebService组件的使用方法与mx:HTTP Service组件的使用方法大 同小异。最主要的区别在于参数的传递方式。2.4.3通过Remot i ng与服务器端通信1.首先建立一个web工程:2.向flexweb工程手工添加Flex需要的元素。1)首先将BlazeDS需要的j ar文件拷贝到工程的lib目录下。可以将上面 建的那个flex工程的lib下的j ar文件拷贝到该工程下的lib目录下。如下 图2-1 BlazeDS的配置文件。5“西安航空职业技术学院毕业设计论文0。backport-util-concurrent.j ar0 0 cf gatewayadap
25、ter j arl commons-codec-1.3 j art(二i commons-h ttpclient-3.0.1j art Pi commons-logging j art。concurrentj ar m flex-messaging-common j art L1 flex-messaging-corej arI flex-messaging-optj ar0 L*flex-messaging-proxyj art Li flex-messaging-remotingj ar0 mysql-connector-j ava-5.1.14-binj ar t xalanj ar图2
26、-1 BlazeDS的配置文件2)然后要加入Flex BlazeDS需要的配置文件。在W EB-I N F下新建一个名 为flex的文件夹,然后将我们上面建立的那个firstFlex该文件夹下的四个 xml文件拷贝到该文件夹下。如图2T BlazeDs的j ar包。/2 W EB-I N F一益 flex也|flex.dtd也 messaging-config.xml怆 proxy-config.xml也 remoting-config.xml也 services-config.xml lib图 2-2 BlazeDs 的 j ar 包3)最后,修改web.xml文件,加入Flex的配置。做法
27、一个简单的把上面 我们新建的那个flex工程的web.xml的部分代码拷贝到该文件中。flex.messaging.HttpFlexSession MessageBrokerServlet flex.messaging.MessageBrokerServlet services.configuration.file/WEB-INF/flex/services-config.xml 16力西安航空职业技术学院毕业设计论文MessageBrokerServlet/messagebroker/*3.配置J 2EE服务器,如下图2-3 Flex配置j 2ee。图 2-3 Flex 配置 j 2ee4.
28、编写Flex与J ava两端交互的代码J ava 端:在remoting-config.xml配置文件中添加如下代码段:bill.TKBill Flex 端:Flex文件中R emoteObj ect的destination值就是J ava配置文件中 destination 的 I D,其中 source 指定到访问的 j ava 类,而 R emoteObj ect 的 I D 和destination的值是一样的,这里只是命名后在本页面使用,通过这个I D可 以直接访问j ava中的方法。2.5 Act i onScr i pt3.0 脚本语言ActionScript最早是开发Flash的
29、脚本语言,最新版本是3.0,它完全是 面向对象的语言,是针对Flash player运行时环境的官方编程语言,他在flash 内容和应用程序当中实现了交互性和数据处理以及其他许多功能,它从AS 1.0 到AS 2.0一直到现在的AS 3.0,虽然从版本上是对以前版本的延续,但在使 用的时候需要全新的认识,实际上AS是从底层中心写的版本,不同的版本在运 行时也是分开处理的,这个在内在的一种巨大的变化,使得播放器的表现能力 有大幅度的提高。完全面向对象的ActionScript3.0,它的语法和j ava很类似,变量以及计 算J avaScript相似,它的数据绑定又有.N ET的风格,因此它集成
30、了 J ava与.N ET 等语言的优点,编写方便简单,很太容易上手。2.6 MySq I一个小型关系型数据库管理系统,开发者为瑞典M ySQL AB公司。目前M ySQL 被广泛地应用在I nternet上的中小型网站中。由于其体积小、速度快、总体拥 有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有 成本而选择了 M ySQL作为网站数据库。8“西安航空职业技术学院 毕业设计论文3系统分析3.1系统的可行性分析3.1.1 经济可行性分析经济可行性分析要估计项目的成本和效益,分析项目经济上是否合理,并 将费用与效益进行比较,看是否有利。首先,在线考试系统地实现的硬件支持只是
31、一台简单的计算机,如今的性 能较好的计算机的价格已经十分低廉。第一,本系统的运行可以代替人工进行 许多繁杂的劳动;第二,本系统的运行可以节省许多资源;第三,本系统的运 行可以大大的提高老师的工作效率;第四,本系统可以使敏感文档更加安全。综上所述,开发一个在线的考试系统对于高校是很受欢迎的。3.1.2技术可行性分析技术可行性是指:根据现有的技术条件,能否达到所提出的要求;所需要 的物理资源是否具备,能否得到。针对于本系统,应用J AV A开发语言实现系统。采用M V C架构并且结合数据 库软件SQL完成系统开发,J AV A语言易于编写修改,流通性广,交流性强。而 SQL更是数据库的主流,在M
32、yEclipse平台上进行开发,前端采用Flash Builder4.5完成,这个工具有可视化用户操作的界面,操作起来简单容易上手,可以在短时间内做出一套淡雅并且干净的界面,并可以省略美工美化的过程。在线开始管理系统各项功能可以完成。3.2系统结构图本系统从逻辑结构上总共分为三个用户端,学生、教师、管理员。学生端 分答卷与交卷两个模块;教师端分题库管理、试卷管理、阅卷与成绩统计四个 大的模块,在试卷管理模块中有三个关键的子模块分别是,新建试卷(组卷)、分析试卷、查看试卷模块;管理员用户分为用户管理与系统管理两个模块,用 户管理模块有学生基本信息的管理与教师基本信息的管理,系统管理模块分系 统配
33、置管理、权限管理、系统的备份与恢复四个子模块。一下是系统的总结构 图。如图3-1系统结构图。9“西安航空职业技术学院毕业设计论文开始批卷总成绩报表单科成绩报表不及格成绩报表总 成 绩图3-1系统结构图3.3系统流程图有了系统总的结构图之后,下来重要的就是系统大的流程图,系统总的流程 图由各个用户或者各个模块为一个流程模块有各自的输入输出,与各模块流程之 间联系。为系统的详细设计以及数据库设计做好准备工作。如图3-2系统流程图。10/西安航空职业技术学院毕业设计论文3.4系统功能需求描述通过系统整体结构的结构与流程的制作,在总体上产品的边界已经限定,下 来就是数据库的设计,和具体的编码过程,就得
34、对每一个细节上详细的划分,将 整体的功能划分成最小的单元功能,如表3-1系统功能需求图所示。11“西安航空职业技术学院毕业设计论文表3-1系统功能需求图在线考试系统设计与实现学生端考试1.答卷2.交卷题库管理1.添加试题2.科目管理3.题库维护阅卷1.批卷2.汇总成绩试卷管理1.新建试卷2.分析试卷3.查看试卷成绩统计1.总成绩报表2.单科成绩报表3.成绩分布用户管理1.学生管理2.教师管理系统管理1.系统备份2.系统恢复3.系统配置3.5系统E-R模型根据系统结构图与总体流程图做出系统实体-联系图,详细划分出系统管理 员和用户之间的联系,如图3-3所示。学生信息表:学号,姓名,密码,性别,年
35、龄,班级教师信息表:教师编号,姓名,年龄,性别,密码科目信息表:科目编号,科目名称章节信息表:章节编号,章节,章节名称题库表:编号,题干,选项,答案,科目编号,题型编号,章节编号 试卷信息表:试卷编号,题库信息,科目,开考时间,结束时间交卷信息表:科目,试卷名称,答案,标准答案,学号题型表:题型编号,题型名称考试日志表:编号,开考时间,结束时间,班级,试卷名称,考试人数12/西安航空职业技术学院毕业设计论文w1_密码教师信息表U砺二)变国力 J编 ib-;题型表题库信息表.N.试卷信息表科目信息表章节信息表(一成绩N交卷信息表交卷学生信息表了制蓟5-/_ _答案,少.才病号,芝)、施斯)性别厂
36、-选项一、日丽商,日志表图3-3系统E-R模型3.6本章小结本章对系统做了可行性分析和系统功能需求分析,从问题定义出发论述该 系统预计实现的功能。根据其功能和后台管理设计出系统实体联系图,根 据其数据流向设计出系统流程图以及数据流图。这些工作为该系统的总体设计 奠定了理论基础。13“西安航空职业技术学院毕业设计论文4总体设计4.1 总体设计的目的经过系统分析阶段的工作,充分明确客户的需求是什么,通过总体设计可 以对后面的是实施有根本的指导作用。总体设计的目的是选取合理的方案,构建基本的功能框剪,为详细设计做 好技术准备;初步判断用户需求有哪些,根据需求分成各个模块;确定相应的 模块实现;确定基
37、本的设计思路。4.2 总体设计的内容总体设计的主要内容:系统的功能模块结构图、系统的数据库表的设计,数据库的关系模型。系统的功能结构设计数据库,为系统建立数据库的表。通 过总体设计可以很有效的划分系统边界,给后面的详细设计做好充分的准备。4.2.1总体功能模块设计本系统功能分为前台和后台,前台是学生端考试使用,后台是教师对整个 系统中的各个功能模块进行操作。前台功能模块:学生考试模块。学生自主登陆,考试,提交试卷的过程。后台功能模块:用户管理模块,试卷管理模块,题库管理模块,系统管理 模块,学生管理模块,成绩统计模块。用户管理模块可以下分为主要是对学生 信息的录入,以及密码的修改。试卷管理模块
38、中包括对试卷的分析,组卷,查 看试卷。题库管理主要是录入新题,并且维护试题。系统管理模块是对系统配 置的管理,系统的备份与恢复,以及权限的管理。成绩管理模块就是对学生的 成绩汇总,排名,等管理。4.2.2数据库结构设计一个成功的信息管理系统,是建立在许多条件之上的,而数据库是其中一 个非常重要的条件和关键技术。信息管理系统所涉及的数据库设计分五个步骤:数据库需求分析、概念设计、逻辑设计、物理设计。在线考试系统就是对多个 数据表的管理,主要是对题库的合理管理,其中包括学生基本信息表,教师基 本信息表,题库信息表,试卷信息表,交卷信息表,科目表,章节表,题型表。题库信息表与章节信息表、科目信息表、
39、题型表,交卷的信息表与学生基本信 14“西安航空职业技术学院毕业设计论文息表建立主外键关系,这样有效的维护了数据的完整性。一下是各个数据表的 详细说明。(1)数据库需求分析的任务是将业务管理单证流化为数据流,划分主题之 间的边界,绘制出DFD图,并完成相应的数据字典。(2)概念设计的任务是从DFD出发,绘制出该主题的实体一关系图,并列 出各个实体与关系的纲要表。(3)逻辑设计的任务是从E-R图与对应的纲要表出发,确定各个实体及关 系的表名属性。(4)物理设计的任务是确定所有属性的类型、宽度与取值范围,设计出基 本表的主键,将所有的表名与字段名英文化,实现物理建库,完成数据库物理 设计字典。根据
40、系统功能设计的要求以及功能模块的划分,数据库需要的存储的信息 如下:学生信息表 教师信息表 科目信息表 章节信息表(学号,姓名,密码,性别,年龄,班级)(教师编号,姓名,年龄,性别,密码)(科目编号,科目名称)(章节编号,章节,章节名称)1)题库表(编号,题干,选项,答案,科目编号,题型编号,章节编号)试卷信息表(试卷编号,题库信息,科目,开考时间,结束时间)交卷信息表(科目,试卷名称,答案,标准答案,学号)题型表(题型编号,题型名称)考试日志表(编号,开考时间,结束时间,班级,试卷名称,到勤人数)学生信息表表4-1学生信息表(studentinfo)字段名称类型长度备注SN OV AR CH
41、AR8P KSN AM EV AR CHAR12P ASSW OR DV AR CHAR8CLASSV AR CHAR12SSEXV AR CHAR2SAGEI N T215“西安航空职业技术学院毕业设计论文2)教师信息表表4-2教师信息表(teach erinfo)字段名称类型长度备注TEAN OV ACHAR8P KTEAN AM EV AR CHAR12TEASEXV AR CHAR2TEAP ASSW OR DV AR CHAR8TEAAGEI N T2P HOTOBLOB3)科目表给课目单独建表的好处是为了方便对数据的检索,更重要的是方便了对 题型的管理,这样就可以实现多科目的考试与
42、管理表 4-3 科目表(KeM uI nfo)字段名称类型长度备注KM N OV AR CHAR8P KKM N AM EV AR CHAR504)章节表章节表的功能是对题库中的试题进行分组管理,利于组卷的实施,防止 抽取的试题集中,并与科目信息表建立主外键关系,可以同步数据,把科目 的信息与章节的信息紧紧绑在一起,既可以维护数据的完整性并且可以方便 更新数据。表 4-4 章节表(zh angj ie)字段名称类型长度备注Z J N OV AR CHAR8P KZ J SV AR CHAR8Z J N AM EV AR CHAR50KM N OI N T8FKEM UI N FO 外键5)题库
43、表题库表是对所有试题的管理,利用科目与章节对题进行分组管理,分别 与科目信息表,章节信息表,题型信息表建立主外键关系。16“西安航空职业技术学院毕业设计论文表4-5题库信息表(Tinfoil)字段名称类型长度备注TKN OV AR CHAR8P KTKM AI NV AR CHAR500TKXUAN XV AR CHAR500TKAN SERV AR CHAR500TKTYP EI N T8TX表外键TKZ JI N T8TKI N FO外键KM N OI N T8KEM EI N FO 外键6)试卷信息表试卷信息表用来存储组卷后的试卷,题库以字符串拼接的形式存储,这样可以加快查询的速度。表4
44、-6试卷信息表(sh i j uaninfo)字段名称类型长度备注SJ N OV AR CHAR8P KSJ N AM ECAR CHAR50SJ TKV AR CHAR500STAR TTI M EDATEEN DTI M EDATE7)交卷信息表交卷信息表存储的是学生考完试提交之后未批改的试卷表4-7交卷信息表(J I AOJ I N FO)字段名称类型长度备注I DI N TP K(自增)SN OArch er8学生表外键KM N OV arch ar8科目表外键SJ N OV arch ar8试卷表外键AN SERV arch ar500FENV arch ar50017“西安航空职业
45、技术学院毕业设计论文8)题型表表4-8题型表(STtype)字段名称类型长度备注STN OI N TP K(自增)STN AM ECAR CHAR129)考试日志表考试日志表示记录考试日志。用来查看某此考试的应到人数与未到人数。表4-9考试日志表(KSLog)字段名称类型长度备注I DI N TP K(自增)STAR TTI M EDATEEN DTI M EDATEN UMI N T6CLASSV AR CHAR12SJ N AM EV AR CHAR504.3 系统开发环境设计系统开发工具采用M yEclipse9.1企业级工作平台。利用它可以在数据库 和W eb开发、发布,以及应用程序服
46、务器的整合方面极大的提高工作效率。这 个工具继承了多种语言的类库,有很多友好的代码提示,大大提高了项目的开 发速度。系统后台数据库采用M ysql数据库管理系统。首先,M ysql数据库是轻量 级的数据库,可以提高检索的性能,并且简单,容易操作。本系统是C/S系统,开发环境是在W indows 7下进行的,Tomcat 6.0能提 供好的W eb服务器支持。同时我们使用的基础语言是J ava,这种面向对象的语 言,可以灵活的使用在编程中,界面用flex图形化工具开发节本是 AclionScripl3.0,这种语言与j ava是无缝结合的,两者交互方便。4.4 本章小结18“西安航空职业技术学院
47、毕业设计论文总体设计阶段的基本目的是用比较抽象概括的方式确定系统如何完成预定 的任务,通过总体功能模块和数据库的设计,可以在脑海中粗略的规划出软件 设计的方案,模块功能为编写程序做好准备。19“西安航空职业技术学院毕业设计论文5详细设计与实现5.1前台功能前台是学生考试端,完成考试的过程。在主界面现实考试的起始时间,考 试时长,以及结束时间。结束考试有两种情况,一种是学生自己提交试卷,一 种是考试时间到的时候,系统自动交卷。登陆界面要求简洁,大方,一目了然。有友好具体的错误提示,主界面必须显示考试的倒计时时间与当前时间。学生的界面要求:清晰简洁,易操作;界面全屏显示;禁止切换、放大、缩小等快捷
48、键;利用分页缓存等技术提高响应速度;优化连接代码提高系统整体的性能。5.2.1登陆模块设计在学生端登陆的界面利用StringV alidator给用户友好的登陆错误提示,在登陆出粗的时候,显示红色边框以及显示红色的错误提示信息,在过程中实 现3D的动画效果,主界面场景的切换要求淡雅,流畅。显示效果如图5-1与图 5-2所示。在我考试系统学生培图5-1登陆界面设计20西安航空职业技术学院毕业设计论文图5-2登陆3D效果添加错误提示的代码:source:指定监听的空间呢对象;property:对象显示的类型;requiredFieldError:提不的错误信息;trigger:触法的控件对象;3D
49、开门效果代码块:protected function loginl_ch angeHandler(event:Event):void(var e:Gate=new Gate(lo);e.siblings=ma;e.mode=OP EN;e.direction=LEFTe.duration=1500;e.play();)Gate:封装3D开门效果的类,传递当前的参数;Siblings:跳转到指定的视图;21“西安航空职业技术学院 毕业设计论文M ode:设置,效果的类型,open为开门效果,close为关门效果;Direction:设置旋转的中心点为Fiet左边;Duration:设置播放的时间
50、;P lay:开始播放;全屏显示代码块:public function fullScreenO:void stage.displayState=StageDisplayState.FULL_SCR EEN;Stage:获取整个舞台对象;displayState:获取舞台显示的状态属性;StageDisplayState.FULL_SCR EEN:设置成全屏显示模式;淡隐淡出效果:Fade:淡隐淡出特效的类;duration:指定效果播放的时间长度;5.2.2打开试卷功能模块设计打开试卷就是将试卷中的试题显示到学生端的操作界面,一次性全部打开 的话,由于数据量过大,可能造成卡屏的现象,降低了用户