1、计算机系本科毕业(设计)论文课题名称基于JAVA离散数学题库管理系统设计与实现专 业计 算 机 科 学 与 技 术姓 名学 号指引教师二零一零年六月目 录1 引 言11.1 开发背景及研究现状11.2 本人重要工作21.3 开发工具阐述22 需求分析42.1 系统可行性分析42.2 需求分析53 概要设计103.1系统整体设计103.2数据库设计114系统详细设计与实现154.1 教师登录模块154.2顾客管理模块164.3题库管理和维护模块184.4自动生成试卷模块214.5手动修改既有试卷模块244.6数据管理模块265系统测试与维护295.1系统测试方案295.2系统成果分析与调试295
2、.3系统维护316 结束语32致 谢33参照文献34基于JAVA离散数学题库管理系统设计与实现摘要:新课改中最突出某些是加重了对学生学习过程考核,因而考试次数明显增长了,这就给任课教师增长了诸多承担。题库管理系统可以以便、快捷、高效实现试卷管理与生成,来减轻这些承担。本文一方面简介了题库建设现状和开发工具,然后提出了离散数学题库管理系统需求分析,明确了系统总体构造。并阐述了运用JAVA、数据库技术,设计与实现基于C/S构造离散数学题库管理系统全过程。重要解决了试题库建立、试卷生成、系统安全性问题。本文详细阐述了系统总体设计思想、数据库设计以及功能模块设计等。从而实现离散数学题库管理信息化,规范
3、化和试卷生成自动化,并使其操作简朴、以便、快捷。核心词:离散数学 题库管理系统 JAVA C/S构造Abstract :Part of the curriculum is added to the students learning process,so the number increased significantly,it would give many teachers increased burden. In order to alleviate the burden,test management system can be convenient,quick and efficie
4、nt management and the realization of the test.This paper introduces the present situation of the construction of the test and development tools,and then puts forward the discrete math test management system of requirement analysis,the general structure of the system. And discusses the process which
5、use JAVA,database technology,design and realization based on C/S structure of discrete math test management system. This paper mainly solves such problems as the building of the paper test,the security of the system. This paper discusses the overall design,database design and function module design,
6、etc. So it makes the discrete mathematics test realize the standardization of management information,and test automation,and generate the operation simple,convenient and quick.Keywords:Discrete mathematics Exam pool administrative system JAVA C/S 1 引 言1.1 开发背景及研究现状信息时代到来,为教诲改革和发展提供了十分有利机遇,教诲教学领域观念、理
7、论和办法也随之不断更新,越来越多计算机技术被引入教学过程,并形成了各种各样智能计算机教学系统。其中,计算机辅助题库系统作为智能计算机教学系统核心,受到了人们极大注重。深化高等学校教学改革,全面提高高等教诲质量,这是党中央、国务院继上世纪末扩大高等教诲招生规模之后,对高等高等教诲改革和发展作出又一重大战略决策。为此,教诲部、财政部决定实行“高等学校本科教学质量与教学改革工程”,投入了25个亿。在国内许多高等院校,离散数学是计算机专业一门核心基本课程,具备概念多,题型广泛,重在理解特点。在离散数学教学中,大量习题练习与解题办法讨论起着重要作用,是巩固知识,深化理解一种必要途径,因而需要对学生进行大
8、量测试和考试。要进行测试和考试,老式出题需要教师付出很大心血,打印试卷也要耗费一定财力。因而,研制离散数学题库管理系统已成为一项重要课题,并且当前,在国家关于项目支持下,浮现了一系实用离散数学题库管理系统。但这些成型离散数学题库管理系统不能满足离散数学教学工作全过程需要。随着对离散数学题库管理系统进一步分析,离散数学题库管理系统将会朝着更加适应离散数学教学工作方向发展,必将会增进离散数学教学工作效率提高。并且在人力上减轻教师承担,在物力上减少学校开支。1.2 本人重要工作学习了JAVA编程和eclipse-SDK-3.2-win32软件使用。通过度析研究任务书规定,以及实地调研,对系统进行了需
9、求分析,设计与实现、测试系统等。系统开发中,重要涉及后台数据库建立和维护以及前端应用程序开发两个方面。对于前者规定建立起数据一致性、完整性和安全性好数据库。对于后者则规定应用程序功能完备,操作上实现简朴、以便、快捷等特点。在以上工作基本上,对系统进行详细设计与系统所有功能实现,最后进入论文撰写阶段。1.3 开发工具阐述本软件为离散数学题库管理系统,是C/S模式信息管理系统。前台采用JAVA技术,后台采用SQL Server 数据库,操作系统采用Windows XP。1.3.1 前台开发工具Java是一种由Sun公司开发而成新一代编程语言。使用它可在各式各样不同种机器、不同种操作平台网络环境中开
10、发软件。Eclipse是一种开放源代码、基于Java可扩展开发平台。就其自身而言,它只是一种框架和一组服务,用于通过插件组件构建开发环境。由于Eclipse中每样东西都是插件,对于给 Eclipse提供插件,以及给顾客提供一致和统一集成开发环境而言,所有工具开发人员都具备同等发挥场合并且支持数据库访问。1.3.1 后台开发工具SQL Server 数据库逐渐成为Windows操作系统平台下进行数据库应用开发中较为抱负选取之一。SQL Server 数据库管理系统是当前最惯用关系型数据库系统之一,它是基于客户机/服务器模式下数据库,扮演着后端数据库角色,它对中档规模数据库支持较好且具备强大功能和
11、稳定性及易于维护等长处。它具备真正客户机/服务器体系构造,能与Windows XP操作系统有机结合,在当前数据库开发中被广泛应用。2 需求分析开发软件一方面做是开发过程中最重要就是系统需求分析,需求分析同步也是软件生存周期中核心一步。依照软件工程学中开发软件规定,对离散数学题库管理系统所有功能和有关技术进行详细分析,分析时采用构造化分析办法,自顶向下、逐级分解问题。2.1 系统可行性分析可行性分析是研究技术领域经济问题和经济规律科学,是研究一定技术条件下如何提高经济效果科学,是技术与经济交叉。其重要研究技术经济效果问题,技术与经济最佳组合问题。2.1.1 经济可行性由于该软件是一种小型离散数学
12、题库管理系统,因此进行该软件开发经费和投资较少,只需一台普通计算机即可,系统开发并不太复杂和繁琐,操作尽量简朴易行。在开发过程中,由一种人独立开发,用时三个月左右,所需成本费用重要为人工费用,再加上计算机和软件等构成该系统开发成本。经济上合理性:在系统开发上,当前普通计算机市场价4000元左右,操作系统是Windows XP加上Microsoft Office其正版软件也但是5000元,数据库采用SQL Server,前端采用eclipse-SDK-3.2-win32。开发人员1名(假设月薪1500元),开发本软件如果是网络开发技术人员最多1个月,开发费用共计大概是10000元左右,且计算机和
13、软件可重复使用。选取自行开发系统,既节约了费用,又可以使本软件符合咱们自己规定并拥有及源码,使后来系统可扩展性也很大。2.1.2 技术可行性由于该系统是小型离散数学题库管理系统,采用C/S模式,开发难度适中。通过对各种开发工具和数据库之间进行比较以及指引教师建议,最后拟定采用JAVA(eclipse-SDK-3.2-win32)。数据库方面则选用了SQL Server进行设计。C/S是指:客户/服务器。其重要由客户机、服务器、网络三要素主成。顾客在个人机(客户机)上工作,可以与中心计算机(服务器)互相通信。网络软件则保证客户机和服务器互相连通。以简朴两层客户机/服务器系统而言,客户端是指应用软
14、件以图形接口显示数据并让顾客进行添加、修改等并行输入输出作业某些,也就是顾客接口负责向后端数据库索取数据,执行客户端软件工作。服务器所执行后端数据库服务器,则专门执行数据存储、检索、管理、备份等种种核心操作。关于JAVA生成WORD文献技术,虽然Sun公司JDK开发包中自身没有提供该功能,但是可以运用JACOB开源类库实现。JACOB是一种JAVA到微软COM接口桥梁。使用JACOB容许任何JVM访问COM对象,从而使JAVA应用程序可以调用COM对象。可以运用它对MS Word、Excel进行解决,当前最新公开版本是jacob_1.9。以上这些技术已经较为成熟,并且在诸多领域中得到了有效验证
15、。有了这样技术支持,也为离散数学题库管理系统开发最后成功奠定了坚实基本。2.1.3 运营可行性运营可行性分析是指新系统运营后良好环境进行预计和评价,同步还应考虑对既有教师培训、补充问题。当前普通教师对计算机都很熟悉,使用题库管理系统只需进行简朴解说、阐明或借助系统协助文档就能不久掌握和使用。2.2 需求分析2.2.1顾客需求分析信息时代到来,为教诲改革和发展提供了十分有利机遇,教诲教学领域观念、理论和办法也随之不断更新,计算机辅助教学(CAI)正是在此背景下产生和发展起来。在各种计算机辅助教学(CAI)软件研制中,题库管理系统研究始终是一种非常活跃课题,也是实现教考分离一种重要手段。运用离散数
16、学题库管理系统,不但能节约离散数学任课教师宝贵时间,提高工作效率,并且能消除出卷人主观意识影响,使考试更加原则化,更加客观、真实、全面地反映教学实际效果,有助于教学质量提高。建立了离散数学题库管理系统后来,可实行教考分离,促使离散数学任课教师必要按照教学大纲规定认真备课,认真组织教学内容,改进教学办法,对提高教学质量和整体教学水平有着非常重要意义。离散数学题库管理系统满足如下需求:(1)为了保证系统内部数据安全性,系统应通过设立不同登陆顾客权限来对系统进行访问和管理。(2)为了以便各种顾客使用本系统,规定能添加和删除顾客。(3)规定能导入试题和查询试题。(4)灵活多样组卷方式,如自动生成试卷、
17、手工修改既有试卷。(5)规定能对生成试卷进行保存,以便下次直接使用。(6)试卷生成速度不适当太慢。(7)结合离散数学试题中有许多图形特点,以便生成试卷以原则试卷形式输出。故选取Microsoft Office Word 作为终端输出软件。(8)试题答案生成功能。(9)为保证数据安全,防止数据丢失。规定能对数据进行备份和恢复。(10)和谐顾客界面。教师管理员顾客管理导入试题查询试题自动生成试卷手动修改既有试卷试卷生成WORD试卷数据管理顾客需求分析目是对离散数学题库管理系统进行评估,采集和分析系统需求,理解系统要解决问题,重点是充分考虑系统实用性。成果可以用一种用例图,图中活动者代表外部与系统交
18、互角色,涉及教师和管理员。用例图是对系统需求描述,表达了系统功能和所提供服务,涉及顾客管理、导入试卷、查询试题、自动生成试卷、手动修改既有试卷、生成WORD试卷、数据管理功能。系统用例图如下图2.1所示。图 2.1系统用例图2.2.2系统功能需求分析系统功能需求分析是从顾客最初非形式化需求到满足顾客需求软件产品映射过程。系统功能需求分析是离散数学题库管理系统设计第一种阶段,是离散数学题库管理系统成功与否重要前提。系统功能需求分析分为:问题分析和功能需求分析两个阶段。(1)问题分析离散数学是国内许多高等院校计算机专业一门核心基本课程,在离散数学教学中,大量习题练习与解题办法讨论起着重要作用,是巩
19、固知识,深化理解一种必要途径、因而需要对学生进行大量测试和考试。因此,除了期末考试外,每个单元都要进行测试和考试,协助学生来巩固知识。这就给任课教师增长了诸多承担。需要任课教师定期命题,出试卷,这无形之中增长了任课教师工作承担。所觉得了减轻这些承担,开发离散数学题库管理系统,可以较好减轻教师承担。(2)功能需求分析普通离散数学题库管理系统应满足顾客对构成试卷各种规定与商定。依照离散数学题库管理系统功能和条件限止,通过调研与分析,离散数学题库管理系统重要应具备如下功能:(1)顾客管理:登录本系统顾客必要有一定权限控制,管理员拥有一切权限。而教师则只能进行试题编辑和生成试卷权限。(2)题库管理和维
20、护:合法教师顾客可以进行试题输入、修改、删除和查询操作,这样教离散数学教师可以使用本生成自己试题库,以便后来在教学考试中随时构成所需试卷。(3)组卷:运营本软件,可以满足教师不同使用规定,即可以自动生成试卷和手动修改既有试卷。并且将所生成试卷以原则试卷形式输出。为了便于使用离散数学题库管理系统,我选取了Microsoft Office Word 作为终端输出软件,这样可以以便编辑所输出试卷,直到满足教师规定为止。(4)数据管理:管理员可以在必要时候对离散数学题库管理系统中数据库进行数据备份和恢复操作。(5)协助:它可以协助教师进一步理解离散数学题库管理系统性能、用法、注意事项和使用环境,有助于
21、更好操作本离散数学题库管理软件系统。数据流图描述了本系统中各种数据间数据解决流向。下面是离散数学题库管理系统顶层数据流图对离散数学题库管理系统重要数据解决过程进行详细描述如下:图 2.2离散数学题库管理系统顶级数据流图依照前面设计规定,离散数学题库管理系统功能重要设立了顾客管理、题库管理和维护、自动生成试卷、手动修改既有试卷、生成WORD试卷、数据管理和协助等七大功能模块。下面用离散数学题库管理系统1级数据流图对离散数学题库管理系统其中五大功能模块重要数据解决过程进行详细描述如下:图 2.3离散数学题库管理系统1级数据流图2.2.3系统性能需求分析即系统服务所应遵循某些约束和限制。例如:原则性
22、、可靠性、安全性、高效性、可维护性。软件开发应能在较长时间内满足课程改革需要。原则性:系统编写与运营必要符合原则,既可以保证系统运营又可以在此原则上每一项功能运营。可靠性:由于离散数学题库管理系统重要性,系统必要稳定可靠,从而避免或减少数据损失。安全性:通过系统权限控制使用者,从而保证使用者无法操作与其无关数据。高效性:由于离散数学题库管理系统生成试卷时,每次解决信息量较大,系统对信息解决能力和响应能力都应是快捷有效。可维护性:采用构造化模块设计,便于开发与维护,也有助于发现状况随时进行扩展。3 概要设计本章重要简介离散数学题库管理软件中整体设计和后台数据库构造设计。数据库构造设计是继需求分析
23、和拟定开发工具后重要阶段,是管理型软件开发设计核心和重要构成某些。数据库构造设计好坏与否将相应用系统运营效率以及实现效果产生很大影响。科学、合理数据库构造设计可以提高数据访问速度,有效保持数据完整性、一致性和共享性,因而数据库构造设计对系统设计来说至关重要。3.1系统整体设计本系统共分5个大功能模块。如图:自动生成试卷删除试题删除顾客数据备份添加试题顾客管理模块教师登录模块数据恢复生成WORD答案生成WORD试卷手动修改既有试卷查询试题修改试题添加顾客题库管理和维护模块数据管理模块块组卷模块图 3.1功能模块图上图即为总体功能模块图,它清晰显示了系统各个模块分布。教师登陆模块是用来验证顾客与否
24、为系统合法顾客,题库管理与维护模块完毕对试题录入、删除、修改和查询。生成试卷模块完毕依照顾客输入生成试卷规定,自动生成试卷,维护已经生成试卷和生成WORD试卷和答案。3.2数据库设计3.2.1数据库概念设计试题内容题号题型所属章节试题答案答案图片试题图片录入日期备注题库分值依照系统设计规定,设计了E-R图,实体为教师、课程、题库和试卷,关系为试卷抽题表。图 3.2 题库实体及其属性图试卷名称组卷时间试卷某些试卷考试类型试卷编号备注题库实体包括了题号、所属章节、试题内容、试题答案、题型、录入日期、图片、分值和备注等属性。图 3.3 章节实体及其属性图试卷实体包括了试卷编号、试卷名称、考试类型、试
25、卷总分、组卷时间和备注等属性。试卷抽题表表达式试题编号备注题型试卷编号图 3.4 试卷抽题表实体及其属性图 1 章节名 章节编号 试卷抽题表 教师编号 题库 拥有 章节 专家予 教师试卷抽题表关系包括了试卷编号、试题编号、题型和备注属性。 1 备注 密码 试卷 考试图 3.5总体E-R图3.2.1数据库逻辑设计在管理系统中,后台数据存储地位相称重要合理设计能缩减软件开发周期和减少开发难度,并提高维护升级可行性。而建立数据库最重要一步是定义数据库表,数据是数据库中存储基本对象,通过设计会以一定组织构造存储在有关基本表中。将基本信息分类、记录,依照数据库设计基本原理,建立基本表构成数据库。在进行数
26、据库需求分析时,不但要考虑到软件系统当前要实现功能,更要注重软件可维护性和扩展性。一方面将离散数学题库管理系统数据库概念构造转化为SQL Server数据库系统所支持实际数据模型,即:数据库逻辑构造。创立离散数学题库管理系统中各个数据库表。表 3.1 教师表字段名数据类型长度容许空字段描述教师编号NVARCHAR14核心字密码NVARCHAR14密码教师表:用来记录教师信息。该表核心字字段是:教师编号。表 3.2 章节表字段名数据类型长度容许空字段描述章节编号NVARCHAR50核心字章节名NVARCHAR50如:第一章备注TEXT16备注章节表:用来记录章节基本信息,可用于存储各种章节。该表
27、核心字字段是:章节编号,同步也是下面题库数据库表外键。表 3.3 题库表字段名数据类型长度容许空字段描述题号NVARCHAR50核心字题型NVARCHAR50选取题、填空题、简答题所属章节NVARCHAR50此题所属章节,例如第二章试题内容TEXT16试题内容试题答案TEXT16试题答案分值INT4试题分数试题图片NVARCHAR50试题中图片答案图片NVARCHAR50答案中图片录入日期DATETIME8录入日期备注TEXT16备注题库表:用来记录各章所相应试题,是生成试卷提供试题来源。该表核心字字段是:题号,用来唯一表达一道试题。该表中是所属章节外键,相应课程数据库表章节编号,表达该试题相
28、应是哪个章节。表 3.4 试卷表字段名数据类型长度容许空字段描述试卷编号VARCHAR50主键试卷总分INT50试卷总分试卷名称VARCHAR50试卷名称考试类型VARCHAR20单元测试、期末考试等类型组卷时间DATETIME8组卷时间备注TEXT16备注试卷表:记录了试卷基本信息,用于生成试卷标题。该表主键字段是:试卷编号。表 3.5试卷抽题表字段名数据类型长度容许空字段描述试卷编号VARCHAR50主键,同步也是外键,相应试卷表试卷编号字段。试题编号VARCHAR50主键,同步也是外键,相应题库表中题号字段。题型VARCHAR50题型备注TEXT16备注试卷抽题表:用来记录每张试卷相应试
29、题,是生成WORD文献数据来源。该表主键字段是:试卷编号和试题编号。这两个字段同步也是外键,分别相应试卷表试卷编号字段和题库表中题号字段。4系统详细设计与实现下面将详细描述每个子模块详细设计。4.1 教师登录模块(1) 界面设计此界面为教师登录界面,在顾客登录时检查顾客名和密码与否有填写,如果未填写则提示并返回,检查通过之后把数据提交给服务器,打开数据库检查顾客填写信息与否对的,登录名称、密码与否相符合,或与否符合管理员登录信息,若符合,则登录成功,进入主界面。此模块用于验证顾客信息,保证了系统内部资料安全性。图 4.1 教师登录界面 (2) 模块内重要算法描述图 4.2 教师登录模块流程图
30、(3) 该模块JAVA类设计实现该模块JAVA类为:login.JieMian类。login.JieMian类:该类用于显示教师登陆窗口,并且负责判断顾客输入顾客名密码与否对的。重要办法简介:void jButtondenlu_actionPerformed(ActionEvent e):该办法在顾客点击拟定、退出、重置按钮时被调用,如果点击拟定按钮,获得界面上输入教师编号(管理员)和密码,如果教师编号(管理员)或者密码不对的,则提示顾客重新输入。若顾客为系统合法顾客,则容许顾客登陆系统,打开系统主界面。如果点击重置按钮,清除顾客输入教师编号(管理员)和密码并且光标位于教师编号框。如果点击退出
31、按钮,则退出系统。4.2顾客管理模块4.2.1添加顾客模块(1) 界面设计此界面为添加顾客界面,在教师添加其他教师时检查教师编号和密码与否有填写并且检查与否是合法,如果未填写或不合法则提示并返回,检查通过之后把数据提交给服务器,打开数据库把教师编号、密码写入数据库。 (2) 模块内重要算法描述图 4.3 添加顾客模块流程图 (3) 该模块JAVA类设计实现该模块JAVA类为:login. Tianjia类。login. Tianjia类:该类用于显示添加顾客窗口,并且负责判断顾客输入顾客名密码与否合法。重要办法简介:void jButtontianjia_actionPerformed (Ac
32、tionEvent e):该办法在顾客点击添加按钮时被调用,获得界面上输入顾客名和密码,如果顾客名或者密码不合法,则提示顾客重新输入。若合法,则把数据提交给服务器,打开数据库把顾客名、密码写入数据库。4.2.2删除顾客模块(1) 界面设计此界面为删除顾客界面,在教师删除顾客时检查教师编号和密码与否有填写并且检查与否是合法,如果未填写或不合法则提示并返回,检查通过之后把数据提交给服务器,打开数据库检查顾客填写信息与否对的,若教师编号、密码相符合,则删除数据库中相应教师编号和密码。 (2) 模块内重要算法描述图 4.4删除顾客模块流程图 (3) 该模块JAVA类设计实现该模块JAVA类为:logi
33、n.Shanchu类。login.Shanchu类:该类用于显示删除顾客窗口,并且负责判断顾客输入顾客名密码与否合法。重要办法简介:void jButtontianjia_actionPerformed (ActionEvent e):该办法在顾客点击删除按钮时被调用,获得界面上输入顾客名和密码,如果顾客名或者密码不合法,则提示顾客重新输入。若合法,则把数据提交给服务器,打开数据库删除数据库中相应教师编号和密码。4.3题库管理和维护模块4.3.1题库管理模块 (1) 界面设计此界面是题库管理界面,是对试题基本信息进行录入,删除和修改。若要添加试题,先点击添加按钮,然后在上面试题信息某些填入试题
34、内容,填写好后,点击保存按钮即可将试题保存到数据库。若要修改试题,在下面图 4.5题库管理界面表格中选取要修改试题,修改上面试题内容,然后点击保存按钮即可将修改后试题保存到数据库。若要删除试题,在下面表格中选取要删除试题,然后点击删除按钮,如果确认删除,系统将会把指定试题删除。(2) 模块内重要算法描述图 4.6题库管理界面模块流程图 (3) 该模块JAVA类设计实现该模块JAVA类为:login. Shitiruku类和data.LibraryHandler类。login. Shitiruku类:该类负责显示题库维护窗口和响应顾客各种操作。重要办法简介:void jButtonT_actio
35、nPerformed (ActionEvent e):该办法用于解决添加试题祈求。一方面将题库记录集(ResultSet)移动到最后一行,然后提示顾客可以插入一条新记录。void jButtonb_actionPerformed (ActionEvent e):该办法用于解决保存数据祈求,当顾客修改或者添加了一条数据后,需要点击保存按钮,也就是调用该办法,添加或者修改成果才干插入到数据库中。void jButtons_actionPerformed (ActionEvent e):该办法用于解决删除试题祈求。一方面判断顾客与否选中了一条记录,若没有选中则不能删除试题,提示顾客选中一条记录。然后
36、询问顾客与否确认删除,若确认删除则删除选中试题。void jButtonf_actionPerformed (ActionEvent e):该办法用于解决返回主界面祈求。data.LibraryHandler类:该类重要用于解决添加试题有关数据库操作,与界面类一起实现自动生成试卷和题库维护和查询功能。重要办法简介:public static String getAllZhanjieName ():该办法用于返回章节表所有章节名,这个办法在添加试题和查询试题窗口中被使用。public static void addZhanjieItems( JComboBox jComboBoxzhangjie
37、 ):该办法用于给章节名称控件添加章节名称项。在显示添加试题和查询试题窗口时,需要先调用这个办法,将所有章节名添加到章节名下拉框中。static void addlistZhanjieItems(DefaultListModel listMode,JList JListzhangjie ):该办法用于给章节名称控件添加章节名称项。在显示自动生成试卷窗口时,需要先调用这个办法,将所有章节名添加到章节名列框中。public static int getzhangjieIdByName( String zhanjieName ):该办法用于依照章节名获得章节编号,在添加试题到数据库中时被调用。由于顾
38、客操作界面上输入是章节名,而题库数据库表中题号前两位用是所属章节章节编号,因此需要调用该办法进行转换。4.3.2试题查询模块 (1) 界面设计此界面是试题查询界面,该功能容许顾客输入题号后点击提交查询按钮或在下面表格中选取要查询试题,进行查询试题操作。图 4.7试题查询界面 (2) 模块内重要算法描述图 4.8试题查询界面模块流程图 (3) 该模块JAVA类设计实现该模块JAVA类为:login. Chaxun类。login. Chaxun类:该类用于实现查询已有试题功能,负责显示查询试题对话框。重要办法简介:void jButtonT_actionPerformed (ActionEvent
39、 e):该办法在提交查询按钮被点击时被调用。一方面获得顾客输入题号,生成查询用SQL语句。然后运用ResultSet实现查询操作。4.4自动生成试卷模块(1) 界面设计此界面是自动生成试卷界面。教师在上面输入试卷基本信息,在下面抽取试题选项中设立试题要抽取章节,题型。 图 4.9自动生成试卷界面 (2) 模块内重要算法描述图 4.10自动生成试卷模块流程图一方面依照选中章节名和题型选项执行查询,先按照章节排序,再按照题型排序,查询出试题可以用于本次试卷生成。然后按照试卷总分(100分)进行循环,当抽取试题总分不不不大于设定总分,并且仍有题目可抽取时,依照查询成果数量,生成一种随机数,抽取一道试
40、题加到已抽取试题列表中,将该试题分数累加到抽取试题总分上,将该试题从待抽取列表中去掉。这样循环下去,当退出循环时候,已抽取试题列表中已经包括了某些试题,满足了试卷总分规定。然后将已抽取试题列表中试题插入试卷抽题表并且保存试卷基本信息,生成WORD试卷。(3) 该模块JAVA类设计实现该模块JAVA类为:login. Zidongshengchengshijuan类、data.MsWordHandler类、data.LibraryHandler类和data. TestPaperHandler类。login. Zidongshengchengshijuan类:该类用于实现自动生成试卷功能,并且负责
41、显示自动生成试卷对话框。重要办法简介:void jButtontianjia_actionPerformed (ActionEvent e):该办法用于将左侧章节列表框中选取章节添加到界面右侧章节选取列表框中。右侧章节选取列表框中章节是指最后生成试卷涵盖章节。void jButtonshangchu_actionPerformed (ActionEvent e):该办法用于将右侧章节列表框中选取项删除。void jButtonshengchenshijuan_actionPerformed (ActionEvent e) :该办法用于依照界面上输入生成试卷条件和试卷基本信息,自动生成试卷,并且
42、将试题和参照答案输出到WORD文献中。data.MsWordHandler类:该类是操作WORD文献类,包括WORD文献基本操作办法。重要办法简介:MsWordHandler():构造函数。初始化 WORD应用程序,新建一种WORD文档。insertParagraph(.):向WORD中添加一种新段落。该办法有5个参数,分别为aParagraph,表达段落内容;fontName表达段落字体;isBold表达与否设定为黑体;isItalic表达与否设定为斜体;fontSize表达字体大小。insertParagraph1(.):向WORD中添加一种新段落。该办法有6个参数,分别为aParagra
43、ph,表达段落内容;imagpath表达图片途径;fontName表达段落字体;isBold表达与否设定为黑体;isItalic表达与否设定为斜体;fontSize表达字体大小。该类尚有其她某些办法,例如添加试卷标题,添加一道大题,添加一道题目等办法,这些办法都通过调用insertParagraph(.)办法实现。在这里就不仔细解说了。data.TestPaperHandler类:该类将已抽取试题列表生成WORD文档。重要办法简介:genWordPaper(.):依照抽取试题,生成WORD文献。该办法共有4个参数,selectedTestItems表达已抽取试题列表;paperTitle表达试
44、卷标题;courseName表达章节名称;testStyle表达测试类型。该办法详细实现:一方面弹出保存文献框,让顾客选取保存位置;然后计算出已抽取试题总分,用于WORD文献输出;然后运用循环,将选取题目输出到WORD文献中。addSpecifiedTestToWord(.):将指定题型题目添加到 WORD 文献中。调用MsWordHandler类详细实现。addSpecifiedAnswerToWord(.):将指定题型题目答案添加到 WORD文献中。调用MsWordHandler类详细实现。data. TestPaperHandler类:此类在数据库维护模块中已简介,在这里就不简介了。4.
45、5手动修改既有试卷模块(1) 界面设计此界面是手工修改既有试卷界面,在该界面中可以对试卷基本信息进行修改,同步也可以点击删除按钮,找开删除试题界面,在下面表格中会显示选中试卷中所有试题。若要删除试题,在下面表格中选取要删除试题,然后点击删除按钮,如果确认删除,系统将会把指定试题删除。也可以点击添加按钮,打开添加试题界面,在下面表格中会显示出题库中所有试题。在下面表格中选取要添加试题,然后点击添加按钮。如果确认添加,若选中试卷中有若指定试题,则添加不成功。若选中试卷中没有指定试题,系统将会把指定试题添加到选中试卷中。图 4.11手动修改既有试卷界面 (2)模块内重要算法描述是否将试题写入WORD
46、文档中获得选中试卷试题和基本信息生成WORD试卷?结束开始查询出所有试卷信息是是是否否否输入试卷基本信息将更改保存到数据库弹出添加试题窗口将顾客选取试题添加到试卷弹出删除试题窗口将顾客选取试题从试卷中删除添加试题?修改试卷基本信息?删除试题?图 4.12手动修改既有试卷流程图 (3) 该模块JAVA类设计实现该模块JAVA类为:login. Shougonggaidongshijuan 类、login.Shoushanchu 类和login.Shoudongtianjia类。login. Shougonggaidongshijuan 类:该类实现对已生成试卷进行修改功能,负责显示维护已生成试卷对话框。重要办法简介:void jButtonbaocun_actionPerformed (ActionEvent e):该办法用于保存试卷基本信息。