毕业设计(论文)基于JSP的在线考试系统.doc

上传人:laozhun 文档编号:3979356 上传时间:2023-03-30 格式:DOC 页数:53 大小:671KB
返回 下载 相关 举报
毕业设计(论文)基于JSP的在线考试系统.doc_第1页
第1页 / 共53页
毕业设计(论文)基于JSP的在线考试系统.doc_第2页
第2页 / 共53页
毕业设计(论文)基于JSP的在线考试系统.doc_第3页
第3页 / 共53页
毕业设计(论文)基于JSP的在线考试系统.doc_第4页
第4页 / 共53页
毕业设计(论文)基于JSP的在线考试系统.doc_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《毕业设计(论文)基于JSP的在线考试系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于JSP的在线考试系统.doc(53页珍藏版)》请在三一办公上搜索。

1、四、毕业设计(论文)装订顺序(一)毕业设计(论文)封面(二)毕业设计(论文)任务书(三)目录(四)中文摘要、关键词(五)英文摘要、关键词(六)正文(七)致谢(八)参考文献(九)附录(设计图纸、源程序及软件使用说明书等有关内容视情况可单独成册)(十)封底郑州轻工业学院本科毕业设计(论文) 题 目 _基于JSP技术的_ _在线考试系统_学生姓名 专业班级 学 号 0034201135 院 (系) 国际教育学院 指导教师(职称) 完成时间 20 年 月 日 基于JSP技术的在线考试系统摘 要如何提高企业员工的技术水平、专业技能被越来越多的企业所关注,员工培训考试自然成为了企业人力资源部门的重要工作内

2、容。借助于网络技术的发展应用,通过建立一套网上在线考试系统,使得员工培训考试可以随时随地进行,组织安排简单方便,极大降低了培训的成本。本系统基于Jsp技术,通过Struts框架来构建,完全的B/S体系结构,将数据库操作全部封装在DAO类中,使得系统层次结构清晰.实现了人员管理、题库管理、试卷管理、考务管理、系统主界面与登录、在线考试、考试成绩查询。在数据库应用方面实现了题库的存储、试卷的存储、考卷的管理、考试的管理、考试的监控上。可以满足企业组织各种考试、竞赛和绩效考核等,为领导者对员工素质进行公正评价和准确分析提供有力的数据支持。 关键词 在线考试系统/Struts/Eclipse/MySq

3、l/TomcatJSP ONLINE EXAMINATION SYSTEMABSTRACTHow to improve the employees skill level and special skill was concerned by more and more enterprise, the employee training and examination become one of the most important works of the department of human resource. With the development and apply of netwo

4、rk technology, the implementation of an online examination system make the training examination taken anytime and anywhere, save the cost of training.This system is based on JSP and using the structure, a whole Browser server structure. All database operations were encapsulated in DAO class, making

5、the system structure clear.The system realized personal management, question-base management, exam papers management, examination management and login, online exam, online exam result query. In the database aspect, the system realized the storage of questions and exam papers, and the management of e

6、xaminations and monitoring of it. This system is able to satisfy the needs from companies operating all kinds of exams, competitions and evaluations. The results may provide reliable data support for employees evaluation and analysis.KEY WORDS online examination system/Struts/Eclipse/MySql/Tomcat 目

7、录(字体没有安要求)中文摘要英文摘要1 绪论61.1 项目背景61.2 开发在线考试系统的意义61.3 系统开发工具介绍71.3.1 Eclipse与MyEclipse71.3.2 MySql简介81.3.3 Tomcat简介81.4 论文结构92 系统分析102.1 可行性研究102.1.1 经济可行性102.1.2 管理可行性102.1.3 技术可行性102.2 系统功能描述102.3 需求分析112.3.1 系统需要解决的主要问题122.3.2 系统应该具备的基本功能122.4 数据库需求分析123 系统设计153.1 系统用例图153.2 功能模块设计163.3 系统结构设计163.3

8、.1 系统总体结构图173.3.2 系统前台模块173.3.3 系统后台模块183.4 系统流程设计分析183.5 数据库设计与实现193.5.2 数据库逻辑设计193.5.3 数据库连接池配置224. 系统实现254.1 技术方案实现254.1.1 配置web.xml文件254.1.2 配置struts-config.xml文件274.1.3 Form和Action的编写284.2 环境配置284.2.1 目录结构284.3 试卷管理模块设计304.3.1 题库管理模块设计304.3.2 试卷管理模块设计324.3.3 人员管理模块设计324.3.4 人员维护管理模块设计334.3.5 考试

9、管理模块设计334.3.6 考试项目模块设计354.3.7 参加考试模块设计364.3.8 考卷成绩查询模块设计384.3.9 考试人员个人信息维护模块设计384.4 考务管理模块设计404.4.1 在线监控管理模块设计404.4.2 考卷评分模块设计414.4.3 考试分析管理设计模块454.5 系统性能优化484.5.1 关闭自动提交功能484.5.2 使用PrepareStatement对象494.5.3 为数据库建立索引49结束语50致 谢51参考文献521 绪论1.1 项目背景随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培

10、训。现在,计算机硬件技术的发展已经达到了相当高的水平。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越

11、来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式,用在线考试系统来解决日常考试,使我们摆脱繁琐的考试阅卷工作。1.2 开发在线考试系统的意义当今社会已经是一个网络繁荣的社会,信息化的浪潮席卷了整个地球,网络成为人

12、们生活和工作的一部分,它延伸到了社会的每个角落,使用网络成为人们的一种习惯,不仅仅是个人,各种大中小型公司,组织机构等都纷纷设立自己的网络系统,通过网络来传递信息,进行各种商务往来。一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是

13、做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来!对于一个企业来说,一套在线考试系统,不仅节省了考试成本,而且使得考试的形式多样化,考试的方式人性化,帮助员工提升自身的学习能力。1.3 系统开发工具介绍1.3.1 Eclipse与MyEclipseEclipse 是一个IDE(Integrated Developing Environment),而这个IDE是允许安装第三方开发的插件来使自身的功能得到扩展和增强的,而Myeclipse就是其中的一种有名的插件集之一,MyEclipse将开发者常用到的一些有用的插件都集合起来,但它是收费的1。 Eclip

14、se是一个开放源代码,基于Java的可扩张的开发平台,多数人都是将Eclipse作为Java的集成开发环境使用,虽然Eclipse使用Java开发:但Eclipse不仅仅局限于Java开发,还可用于其它语言的开发,如C/C+。 Eclipse是一个框架和一组服务,它通过各种插件来构建开发环境,因此只要提供支持C/C+ 插件便能进行相应语言的开发。Eclipse最早是由IBM开发的,后来IBM将Eclipse作为一个开发源代码的项目,献给了开源组织Eclipse.org但仍由IBM的子公司OTI继续Eclipse的开发。MyEclipse为Eclipse提供了一个大量私有和开源的Java工具的集

15、合,这解决了各种开源工具的不一致和缺点。NitroX是一个繁杂而强大的加速Java Web应用开发的工具,还包含了一个强大且能够编译所有JSP和Struts Web应用的工具AppXRay。这些工具解析Java和XML配置文件。MyEclipse的实际价值来自包含的发布包中的大量的工具。如CCS/JS/HTML/XML的编辑器,帮助创建EJB和Struts项目的向导并产生项目的所有主要的组件如action/session bean/form等。还包含编辑Hibernate配置文件和执行SQL语句的工具。1.3.2 MySql简介MySql是一个广受Linux社区人们喜爱的半商业的数据库。MyS

16、ql是可运行在大多数的Linux平台,以及少许非Linux甚至非Unix平台。可以在MySql站点上获得大多数主要的软件包格式(RPM、DBE、TGZ),客户端库和各种语言包装(Wrapper)可以分开的RPM格式获得。RPM格式的安装没有多大麻烦,并且无需初始配置2。MySql包含一些与SQL标准不同的转变,他们的大多数被设计成是对SQL语言脚本语言的不足的一种补充。它的开发快速进行着。事实上,开发步伐对大多数开放源代码是一种挑战。MySql是数据库领域的中间派。它缺乏一个全功能数据库的大多数主要特征,但是又有比类似Xbase记录存储引擎更多的特征。它象企业级RDBMS那样需要一个积极的服务

17、者守护程序,但是不能象他们那样消费资源。查询语言允许复杂的连接(join)查询,但是所有的参考完整必须由程序员强制保证。MySql在Linux世界里找到一个位置并提供简洁和速度,同时仍然提供足够的功能使程序员高兴。数据库程序员喜欢其查询功能和广泛的客户库,数据库管理员会发觉它对简单数据库是有价值的。1.3.3 Tomcat简介Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。Tomcat被J

18、avaWorld杂志的编辑选为2001年度最具创新的java产品,可见其在业界的地位。由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。 在Tomcat中,应用程序的部署很简单,只需将WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于Ftp,可以在远程通过Web部署

19、和撤销应用。当然本地也可以3。 Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache。我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet。这种集成只需要修改一下Apache和Tomcat的配置文件即可。 Tomcat是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性。如今,Tomcat越来越受到人们的重视。1.4 论文结构在后面的章节中主要介绍如下:第二部分介绍系统各个理论方面的分析,主要包括可行性研究,

20、概要分析,结构体系等。第三部分主要介绍系统的设计,在这一章节里详细介绍了数据库的设计,主要包括系统功能模块图,及数据库中表的详细设计字段。第四部分是系统的具体实现部分,这一部分介绍了对数据库的操作,各主要业务流程,以及系统实现的部分关键代码,并截取了系统的部分运行界面。第五部分为总结部分,对系统的整个设计开发过程做了总结,着重总结了开发过程采用的技术,以及对系统的展望。2 系统分析2.1 可行性研究2.1.1 经济可行性本系统在开发、运行、维护等阶段的所需费用都很低。系统的开发规模较小,所需设备也少,尽量利用了现有的设备。系统的运行环境为一般企业通用的操作系统和常用数据库软件,安装方便快捷,运

21、行过程中不易出错,且大多数维护人员都熟悉这种开发语言,无形中为系统实施后的维护工作及更新升级工作带来了方便。兼容性好,不必为购买新设备而投入大量财力。由于开发周期较短,各种开发费用较少,而且系统的界面美观大方,操作简单,方便实用,能够很快被熟悉原系统的工作人员所熟悉,没有培训费用。由于开发工具和开发语言的先进性和较为成熟的特点,各功能模块间关联度低,而每个模块内部的聚合度较高,所以系统运行期间故障率很低,使的系统的运行和维护费用也很低,有利于节约成本4。2.1.2 管理可行性由于系统人性化设计较好,采用B/S结构,无须客户端配置,管理员登陆操作简单,可以方便的进行题库管理及人员管理等管理操作,

22、无须对相关人员进行专业培训。2.1.3 技术可行性当前电脑配件的性能不断提高,高档计算机的性能甚至超过了小型服务器,可以花费相对较少的费用就可买到性能比较高的机器,企业拥有的局域网,计算机配置也较高,每台计算机都配有100M网卡,局域网的通信能力较强,可满足较频繁的远程数据库操作服务。软件方面也是现今中小型企业常用的Windows操作系统和MySql等数据库软件,软、硬件条件都较为成熟,为本系统的开发和使用提供了较好的可行性。2.2 系统功能描述 相比传统的考试方式,在线考试系统的主要好处是一方面可以动态地管理各种考试信息,只要准备好足够大的题库,就可以按照要求自动生成各种试卷;另一方面,考试

23、时间灵活,可以在规定的时间段内的任意时间参加考试;另外计算机化的考试的最大特点是阅卷快,系统可以在考试结束时当场给出客观题考试成绩,计算机阅卷给了考生最大的公平感。本系统是针对企业内部员工考核的需求进行开发的一个在线系统。从企业角度来看,纸质的考试不仅物质成本高,而且需要耗费大量的人力资源;此外,纸质考试不够灵活,使得考试形式不够人性化,不能体现出企业考试的真实目的,即促进员工提升自身的素质和能力,更好地为企业服务。系统主要实现试题库管理,组卷,试卷库管理,考务管理及人员管理等功能。试题库由管理员进行管理,对题库进行维护,设计了题目的添加、修改和删除操作;组卷功能即管理员从题库中抽取题目,形成

24、试卷,试卷形成后,在未进行开考操作以前可以进行修改操作;对已生成的试卷进行人员的分配,确定哪些人进行考试、确定人员之后可执行开考操作,此时相关的员工就可以进行登录参加考试了;考务管理功能可以对在线考试的员工的考试进行监控,从监控台上可以看到当前考生的状态,以达到监考的目的;对考试完毕的考生的考卷进行评分操作,客观题在考卷提交时,已经由系统给出分数,评分操作主要是进行主观题目的评分;考试后可以对考试进行统计分析,列出参加此次考试的考生的考试详细信息,并统计出各个分数段的人数,提供给企业管理者作决策支持。将这些功能整理归纳一下可以将其分成6大模块,分别是:用户权限管理模块、组卷模块、考务模块、联机

25、考试模块、试题、试卷管理模块和成绩管理与分析模块。2.3 需求分析 该在线考试系统是面对一般企业的,主要包括“在线考试子系统”,“在线考试后台管理子系统”两个大模块。在“在线考试子系统”中,员工可以进行登录,参加考试,查询成绩,修改个人信息等操作;而“在线考试后台管理子系统”是提供给系统的管理员进行操作的,管理员可以进行题库管理,员工信息管理,试卷管理,考务管理,历史数据分析等操作。2.3.1 系统需要解决的主要问题首先,不同的考试是面向不同的员工的,所以考试者进入系统应该进行身份验证。考试者进入考试系统后,应该能根据自己的需要选择考试科目,所以该系统还应具有考试科目选择的功能。另外,系统还应

26、该对考试时间进行控制,时间到了会要求考试者交卷。考试者选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。考试完毕后,可以返回登录界面或继续考试。此外,应该能够方便、快捷的对在线考试系统管理,此外,用户还应能进行远程注册5。2.3.2 系统应该具备的基本功能用户注册:用户可以进行注册,然后登录。用户信息的管理:管理员可以增删用户试题模型设置:设置各科目试题的每种题型的数量和分值。试题库管理:分科目,对单选、多选两种题型试题库的管理,使试题的增删、编辑更为简便。试卷生成:由管理员从试题库里抽取试题生成一份试卷。在线考试:系统严格控制整个考试过程,实行时间的监控与权限的控制,考生需要在限定的

27、考试时间内交卷。 计算机自动阅卷:本系统只考虑客观题,要求计算机能自动阅卷。成绩查阅:考生考完以后,管理员应该能对所有记录进行查询,并应该可以删除指定纪录。除了实现上述功能以外,在线考试系统还应该具有友好、简洁的界面,安全性要高,稳定性要强,能够满足100人以上同时进行在线考试。2.4 数据库需求分析根据在线考试系统的需求,设计对应的数据表及功能如下所示: 员工信息表:存放与员工信息相关的信息数据。 题库信息表:存放系统所有的题目的基础信息数据。 试卷基础信息表:存放系统所生成的试卷的基础信息数据,不包含试卷的详细信息。 试卷详细信息表:存放试卷的详细信息数据。 考卷基础信息表:存放分配以后考

28、卷的基础信息数据。 考卷详细信息表:存放考生的考卷的详细信息数据。 学历教育基础信息表:存放有关员工学历的基础信息数据。 机构基础信息表:存放有关员工所属机构的基础信息数据。 职务基础信息表:存放有关员工职务的基础信息数据。 管理员信息表:存放管理员的相关信息数据。根据以上的分析,确定本系统中的实体有: 考生实体:存放考生信息。 题目实体:存放题目信息。 试卷实体:存放试卷信息。 试卷明细实体:存放试卷的明细信息。它与试卷实体的关系是多对一的关系;对于题目实体的关系是一对多的关系。 考卷实体:存放考卷的信息。它与试卷明细实体的关系是多对一的关系;考卷实体与考生实体的关系是一对一的关系。 考卷明

29、细实体:存放考卷的明细信息,考卷明细实体与考卷实体的关系是多对一的关系6。数据库设计的E-R图如图2.1所示。图2.1 E-R图3 系统设计3.1 系统用例图在线考试系统是面对一般企业的,主要包括“在线考试子系统”,“在线考试后台管理子系统”两个大模块。在“在线考试子系统”中,员工可以进行答题、查询分数、修改个人信息等操作;而“在线考试后台管理子系统”是提供给系统的管理员进行操作的,管理员可以进行出题、选题生成试卷、分配试卷、批改试卷、监控考试及考试分析等操作。在线考试系统的用例图如图3.1所示。图3.1系统用例图3.2 功能模块设计根据上面的需求,本系统需要完成的功能模块包括:参加考试:在员

30、工登录系统以后,可以查询到需要参加的考试项目,选择参加考试后即进入考试中。考试题目按格式列出,并提示考试的时间。完成答卷后,员工可以提交答卷,如果考试时间到,试卷会自动进行提交。考生成绩查询:考生登陆后,可以查询以往考试的信息。通过这个功能,考生可以查询考试的成绩及考试试题的标准答案。考生信息管理:考生登陆后,可以对自身的相关信息进行修改,主要是一些联系信息,其他信息由管理员进行控制。此外,考生可以对登录的密码进行修改,如果遗忘了密码,可以向管理员申请恢复原始密码。员工信息管理:管理员登陆后,可以对员工的信息进行维护,包括添加员工信息,修改员工信息,查询员工考试的历史成绩,恢复员工原始密码。题

31、库管理:管理员登陆后对题库进行维护,可以进行题目的添加,修改和删除操作。试卷管理:从题库中抽取题目,形成试卷。试卷形成后,在未进行开考操作以前可以进行修改操作。试卷的分发:对已生成的试卷进行人员的分配,确定哪些人进行考试。确定人员之后执行开考操作,此时相关员工可以登录参加考试。考务管理:对在线考试的员工的考试进行监控,从监控台上可以看到当前考生的状态,以达到监考的目的。考卷评分:对考试完毕的考生的试卷进行评分操作。客观题在考卷提交时,已经由系统给出分数,这里主要是进行主观题目的评分。考试分析:对结束的考试进行统计分析。列出参加此次考试的考生的详细信息,并统计出各个分数段的人数,提供给系统的管理

32、者作决策支持。3.3 系统结构设计由上面的需求分析,我们可以设计出本系统的总体结构包括两个子系统:在线考试系统前台、在线考试系统后台管理系统。3.3.1 系统总体结构图根据分析可画出本系统得系统总体结构图如图3.2所示。图3.2 总体结构图3.3.2 系统前台模块在线考试系统前台有6个模块:考生登录 负责对考生登录的信息进行验证逻辑处理。考生注销 对已经登录的考生进行注销处理,在这个过程中要清除系统运行中所保存的考生登录信息。参加考试 列出考生的考试项目列表,考生选择某个考试项目后即可参加考试。考生成绩查询 登录的考生可以对已经结束的考试进行成绩查询,并且可以查询到考卷的标准答案和自己的答案。

33、考生密码修改 考生在登录后进行密码修改;密码修改时要输入原来的密码进行验证,并且输入两次新密码进行核对,方可以进行密码的修改操作。考生信息修改 考生可以修改一些和自身联系方式相关的信息,包括电子邮件、联系地址、电话等信息。3.3.3 系统后台模块在线考试系统后台有5个模块:人员管理 在这个模块里,可以进行员工信息的添加,并可进行修改和删除的维护操作。管理员还可以查询到员工考试的历史记录信息。题库管理 管理员可以进行题目的添加,包括:单选题、多选题、填空题、简答题等。并可以对题目进行修改和删除等维护操作。试卷管理 对题库中的题目进行选择,形成试卷。考务管理 管理员对生成的试卷进行分配,选择需要进

34、行考试的人员并且将试卷分发。分发试卷以后,考生即可参加考试。在考试的过程中,管理员可以通过考试监控台对考生参加的考试的信息进行监控。考试结束后,管理员通过试卷评分功能对考卷进行评分操作。其他管理 主要是管理员的退出系统功能。3.4 系统流程设计分析本系统涉及两大流程:一是开放式流程;二是封闭式流程。所谓开放式流程是说一组过程中没有开始和结束的标志,这组过程的先后次序可以是灵活的,只是在进行某种操作时会受到一些约束,而这些约束可以通过其中的一个或几个操作就可以解除。所谓封闭式的流程则是指这个过程有一个开端一个结束。这个过程中的次序有先后,从开始到结束的过程是按照一定的顺序来进行的7。以下是系统中

35、的开放式流程:添加员工 这个过程不受其他条件的约束。添加题目 这个过程不受其他条件的约束。添加试卷 在这个过程中,受到添加题目的约束。只有有了题目以后,才能够进行试卷的生成操作,一旦题库建立以后,这种约束也会解除。分配考卷 这个过程受到添加员工操作的约束。只有添加了员工,才能够进行考卷的分配工作。一旦员工添加完毕,这种约束也会解除。系统中的封闭式流程就是考试过程。系统流程图如图3.3所示。图3.3 系统流程图3.5 数据库设计与实现3.5.2 数据库逻辑设计根据以上的设计,数据的字段详细设计如下:员工信息表(ex_examinee):共15个字段,examinee_id为主键;sex,orga

36、nization_id,post_index,state,operation,education_index字段与基础信息表进行关联,如图3.4所示。图3.4 员工信息表管理员信息表(ex_adminuser):id字段为关键字,name为管理员用户名,password为密码字段,如表3.5所示。图3.5 管理员信息表题库信息表(ex_question):此表共有10个字段,q_id为主键、q_class、q_knowledge、q_type、q_difficulty字段与一般基础信息表ex_baseinfo关联,如图3.6所示。图3.6 题库信息表试卷基础信息表(ex_examination

37、paper):关于试卷的存储,分为两个表来进行处理,图3.7为试卷基础信息表,共有12个字段,e_id为主键,e_type,e_grade,e_state与一般基础信息表ex_baseinfo进行关联。图3.7 试卷基础信息表试卷详细信息表(ex_examinationpaper_detail):试卷详细信息表的主键为e_id、q_id,其中q_id与题库信息表中的主键关联,q_type与一般基础信息表ex_baseinfo进行关联,如图3.8所示。图3.8 试卷详细信息表考卷基础信息表(ex_testpaper):考卷的存储也分为两个表来进行,包括考卷基础信息表和考卷详细信息表,基础表存放一

38、些有关考卷的基础信息,其中t_id,t_state与一般基础信息表ex_baseinfo进行关联,如图3.9所示。图3.9 考卷基础信息表考卷详细信息表(ex_testpaperdetail):此表中t_id和q_id构成主键,其中q_id与题库信息表进行关联,如图3.10所示。图3.10 考卷详细信息表 在本系统中,基础信息表共有四个:一般基础信息表、学历教育基础信息表、机构基础信息表、职务基础信息表。一般基础信息表存放的是系统中大部分的基础信息,学历教育基础信息表存放的是有关学历信息的表,机构基础信息表维护的是有关机构的信息,职务基础信息表存放的是职务基础信息,这四个表的介绍如下。一般基础

39、信息表(ex_baseinfo):此表中,b_id代表唯一字段,b_type为要维护的基础信息的类别,b_value代表某一条基础信息的值。如图3.11所示。图3.11 一般基础信息表学历教育基础信息表(b_education_type):此表中存放有关学历教育的基础信息,其中education_index为主键,education_name字段为对应主键的值,如图3.12所示。图3.12 学历教育基础信息表机构基础信息表(b_organization):organization_id字段为主键,org_name为对应的值,如图3.12所示。图3.12 机构基础信息表职务基础信息表(b_pos

40、t_type):post_index字段为主键,post_name字段为对应主键的值,如图3.13所示。图3.13 职务基础信息表3.5.3 数据库连接池配置需要用到Tomcat数据库连接池,所以要在Tomcat的配置文件中进行配置,我们在Tomcat目录下面的confCatalinalocalhost的exam.xml文件中加入下面代码8: factory mons.dbcp.BasicDataSourceFactory maxActive 20 maxIdle 5 maxWait 10000 username root password admin driverClassName com.

41、mysql.jdbc.Driver url jdbc:mysql:/localhost:3306/exam?useUnicode=true&characterEncoding=gbk 配置连接池后,我们可以开始写数据库连接的类,将连接代码封装在DBConn类中,首先定义了一个InitialContext对象,通过其lookup()方法查找到系统的上下文对象env(),再通过此对象的lookup()方法找到Tomcat中定义好的数据源。数据源获得以后,即可通过它来获取数据库的连接了。4. 系统实现4.1 技术方案实现本系统采用的是Struts+JavaBean方案来实现,数据库使用的是M

42、ySql。Struts是Apache基金会的一个开源项目,基于Sun J2EE平台的MVC框架,主要采用Servlet和JSP技术来实现,能够很好地帮助Java开发者利用J2EE开发Web应用,是面向对象设计。实现重点在Controller,包括ActionServlet/RequestProcessor和我们定制的Action。JavaBean 是一种组件,它在内部有接口或有与其相关的属性,以便不同人在不同时间开发的 bean 可以询问和集成。可以构建一个 bean,而在以后构造时将其与其它 bean 绑定9。下面是Struts的配置以及系统的开发过程。4.1.1 配置web.xml文件将指定后缀(.do)的请求转到相应的Controller-Struts ActionServlet处理。 action org.apache.struts.action.ActionServlet config/par

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号