版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、天才大学毕 业 设 计(论 文)题 目:Java Web应用开发 在线模拟考试系统的设计与实现学 院:计算机学院 专 业: 软件工程 34 / 44毕业设计(论文)原创性声明和使用授权说明原创性声明本人重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作与取得的成果。尽我所知,除文中特别加以标注和致的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得与其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了意。作 者 签 名:日 期:指导教师签名: 日期:使用授权说明本人完全了解大学关于收集、
2、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部容。作者签名: 日 期:学位论文原创性声明本人重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年
3、 月 日学位论文使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日指导教师评阅书指导教师评价:一、撰写(设计)过程1、学生在论文(设计)过程中的治学态度、工作精神 优 良 中 与格 不与格2、学生掌握专业知识、技能的扎实程度 优 良 中 与格 不与格3、学生综合运用所学知识和专业技能分析和解决问题
4、的能力 优 良 中 与格 不与格4、研究方法的科学性;技术线路的可行性;设计方案的合理性 优 良 中 与格 不与格5、完成毕业论文(设计)期间的出勤情况 优 良 中 与格 不与格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规? 优 良 中 与格 不与格2、是否完成指定的论文(设计)任务(包括装订与附件)? 优 良 中 与格 不与格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 与格 不与格2、论文的观念是否有新意?设计是否有创意? 优 良 中 与格 不与格3、论文(设计说明书)所体现的整体水平 优 良 中 与格 不与格建议成绩:优 良 中 与
5、格 不与格(在所选等级前的画“”)指导教师: (签名) 单位: (盖章)年 月 日评阅教师评阅书评阅教师评价:一、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规? 优 良 中 与格 不与格2、是否完成指定的论文(设计)任务(包括装订与附件)? 优 良 中 与格 不与格二、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 与格 不与格2、论文的观念是否有新意?设计是否有创意? 优 良 中 与格 不与格3、论文(设计说明书)所体现的整体水平 优 良 中 与格 不与格建议成绩:优 良 中 与格 不与格(在所选等级前的画“”)评阅教师: (签名) 单位: (盖
6、章)年 月 日教研室(或答辩小组)与教学系意见教研室(或答辩小组)评价:一、答辩过程1、毕业论文(设计)的基本要点和见解的叙述情况 优 良 中 与格 不与格2、对答辩问题的反应、理解、表达情况 优 良 中 与格 不与格3、学生答辩过程中的精神状态 优 良 中 与格 不与格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规? 优 良 中 与格 不与格2、是否完成指定的论文(设计)任务(包括装订与附件)? 优 良 中 与格 不与格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 与格 不与格2、论文的观念是否有新意?设计是否有创意? 优 良 中 与格
7、不与格3、论文(设计说明书)所体现的整体水平 优 良 中 与格 不与格评定成绩:优 良 中 与格 不与格(在所选等级前的画“”)教研室主任(或答辩小组组长): (签名)年 月 日教学系意见:系主任: (签名)年 月 日摘 要随着网络技术的发展,远程教育和网上考试成为网络应用的一个重要方面。近几年,在线考试特别是基于Web 的在线考试系统受到越来越多的人青睐。本次毕业设计的题目是在线模拟考试系统的设计与实现,系统采用浏览器/服务器模式开发,包括登录注册、在线考试、试卷设置、试题管理、分数的统计以与成绩查询等功能。系统运行在Windows 7操作系统上,以Tomcat作为Web服务器,使用JSP技
8、术和MySQL 数据库实现。论文首先对在线考试系统做了需求分析,然后给出系统的设计与实现过程,最后,针对系统的各个功能进行了测试。关键词:在线考试;浏览器/服务器;JSP;MySQL;JDBC;AbstractWith thedevelopment of networking technology, online examination and distance education is an aspect in the application of internet. In recent years the on-line examination especial of Web-based
9、examination is more and more popular. The graduation projects subject is to design and realization of the online examination system. The system uses the browser/server to develop. It includes login, new user registration, on-line examination, examination paper set, examination paper management,score
10、 statistics ,query results and other functional. The system takes the Windows 7 as the OS,Tomcat as the web Server, uses JSP technology and MySQL as the Database Server development tools to realize the system. In this paper, the requirement analysis about the online examination system is introduced,
11、 and then give the system design and implementation .Finally, all of the functions of the system is tested.Keywords:On-line Examination;Browse/Server;JSP;MySQL;JDBC;目录摘要(中文)I(英文)II第一章系统概述11.1 系统开发背景11.2 系统开发意义11.3系统开发工具1第二章系统分析52.1 现状分析52.2 可行性分析52.3 设计目标62.4 功能要求62.5 系统开发环境配置7第三章系统设计93.1数据库设计93.2系统
12、结构设计113.3用户界面设计12第四章系统实现154.1 数据库连接的实现方法154.2 登陆注册模块164.3考生模块184.4 教师模块234.5 管理员模块31第五章系统测试335.1什么是软件测试335.2软件测试的目标与方法335.3测试容335.4系统的不足和展望34结束语35参考文献36第一章 系统概述1.1 系统开发背景随着我国计算机技术和通讯技术的发展,互联网的普与程度已经很广泛了,但是,现在的教育教学检验方式,还是停留在过去的纸质考试层面在,而传统的教育教学检验方式中,要进行一次考试,至少需要经过教师出题、学生考试、教师阅卷等几步,这是一个繁杂的过程,需要大量人力、物力与
13、时间的投入,同时也让教师的工作量越来越大;现在远程教育类学校的增多,虽然利用了网络拉近了教师与学生的距离,但学生的分布过广,导致了不易统一集中安排考试,考生成本的增加等诸多难题的出现,给校方和学生带来了很多的不便,因此,传统的考试方式已经不能适应现在新兴的教育教学方式的考试需要了。可以解决这些诸多难题的一种方式,就是利用Internet无国界的特点,在互联网上在线考试。在线考试系统可以减轻教师的工作负担、提高工作效率,也减少了因考试而消耗不必要的人力和物力。在线考试的题目由计算机从题库中随机抽取,提高了考试的质量,考试的评判由计算机自动完成,这样使考试更趋于公证、客观。随着社会的发展和我国互联
14、网的普与,我们的生活中的已经有很多方面都运用到了网络,比如网上购物,网上交友等,甚至现在很多人看新闻都是通过网络阅读的,在阅读新闻这个事件上,已经不仅仅局限于纸质化的报纸上了;而要把考试趋于无纸化的模式,需要在线模拟考试系统来完成,这个也是现在高等教育发展的一个需求。在国,试题库系统理论与技术的研究在最近几年取得了很大的进步。我国许多企业和高校都投入量大量的人力物力到各门课程的试题库中,并取得了一定的成就。现在的生活中已经有越来越多的等级考试运用了在线考试系统,比如会计的电算化考试、计算机等级考试、银行考试等,这些已经充分说明,在线考试系统是今后我们的考试生涯中的一个发展趋势。1.2 系统开发
15、意义考试是教育中一个非常重要的环节,但在以前的很长时间里,全球所有的国家都是以笔试的方式来检查焦距教学成果的,随着网络的发展,互联网已经普与的非常广泛,随着这些周围环境的改变,人们开始去寻找新的方式来去达到更客观,更方便快捷的去达到考试的目的。近些年来,在国外,已经投入使用的考试系统有著名的TOEFL,GRE网上考试系统,还有微软、思科等大公司的国际认证考试等,这些考试系统在全球围有众多的使用者。网络化考试系统对节约考试成本,实现远距离的同步考试,提高考试效率,确保考试结果的公平、公正、科学、与时等具有重要的意义,不仅可以动态地管理考试信息,而且还提高了教学的灵活性,相信随着技术的不断发展和网
16、络覆盖面的不断扩大,在不断完善该考试系统的同时也会在更大的围上应用。1.3系统开发工具本系统是基于Tomcat为服务器,JSP+MySQL数据库技术实现的一个简单的在线考试系统,以下对JSP技术、MySQL数据库和TomCat作简要的介绍。 1.3.1动态网页开发技术JSP(Java Server Page)JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段和JSP标记,从而形成JSP文件。 用JSP开发的Web应用是跨平台的,即能在L
17、inux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java servlet一样,是在服务器端执行
18、的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。 JSP页面由HTML代码和嵌入其中的Java代码所组成。Java servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 1JSP技术的强势 (1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/
19、PHP的局限性是现而易见的。 (3)强大的可伸缩性。从只有一个小的Jar文件就可以运行servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。 (4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。 2 JSP技术的弱势 (1) 与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。 (2) Jav
20、a的运行速度是用class常驻存来完成的,所以它在一些情况下所使用的存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的.java文件和.class文件,以与对应的版本文件。1.3.2 数据库MySQLMySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun 公司收购。MySQL被广泛地应用在Internet上的中小型中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型为了降低总体拥有成本而选择了MySQL作为数据库。如雅虎、阿尔卡特朗讯、Google公司、诺基亚公司、百度等公司就采用了
21、MySQL数据库。MySQL数据库可以称得上是目前运行速度最快的SQL语言数据库。除了具有许多其它数据库所不具备的功能和选择之外,MySQL数据库是一种完全免费的产品,用户可以直接从网上下载.MySQL数据库主要有以下特点:1、可移植性使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植性。2、可扩展性和灵活性MySQL可以支持UNIX、Linux和SUN OS以与Windows等多种操作系统平台。在一个操作系统中实现的应用可以很方便地移植到其他操作系统。MySQL作为开源性质的 数据库服务器,可以为那些想要增加独特需求的用户提供完全定制的功能。3、强大的数据保护功能MySQL有一
22、个非常灵活且安全的权限和密码系统。为确保只有获授权用户才能进入该数据库服务器,所有的密码传输均采用加密形式,同时也提供了 SSH和SSI。支持,以实现安全和可靠的连接。MySQL强大的数据加密和解密功能,可以保证敏感数据不受未经授权的访问。4、支持大型的数据库虽然对于用PHP编写的网页来说,只要能够存放数百条以上的记录数据就是够了,但MySQL可以方便地支持上千万条记录的数据库。作为一个开放源代码的数据库,MySQL可以针对不同的应用进行相应的修改。5、超强的稳定性MySQL拥有一个非常快速而且稳定的基于线程的存分配系统,可以持续使用而不必担心其稳定性。线程是轻量级的进程,它可以灵活地为用户提
23、供服务,而不占用过多的系统资源。用多线程和C语言实现的MySQL能很容易地充分利用CPU。6、强大的查询功能MySQL支持查询的select和where语句的全部运算符和函数,并且可以在同一查询中混用来自不同数据库的表,从而使得查询变得快捷、方便。1.3.3 Tomcat介绍Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,是Apache 软件基金会的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些学校与个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servl
24、et 2.4 和JSP 2.0 规。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用
25、它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 自从JSP发布之后,推出了各式各样的JSP引擎。Apache Group在完成GNUJSP1.0的开发以后,开始考虑在SUN的JSWDK基础上开发一个可以直接提供Web服务的JSP服务器,当然同时也支持Servlet, 这样Tomcat就诞生了。Tomcat是jakarta项目中的一个重要的子项目,其被JavaWorld杂志的编辑选为2001年度最具创新的java产品,同时它又是sun公司官方推荐的ser
26、vlet和jsp容器,因此其越来越受到软件公司和开发人员的喜爱。servlet和jsp的最新规都可以在tomcat的新版本中得到实现。其次,Tomcat也是完全免费的软件,任何人都可以从互联网上自由地下载。第二章 系统分析2.1 现状分析传统的考试方式是教师提前命题、印刷试卷、组织学生考试、学生在统一时间和地点考试、收卷后教师阅卷、成绩统计。如图2.1组织学生考试印刷试卷教师提前命题成绩统计教师阅卷学生统一考试图2.1 传统考试模式这种模式存在有较多的问题:命题:由于是同意的时间进行考试,所以考生的试卷都是一样的,这样对教师命题带来的很大的麻烦,即:试题太难或者太容易,都达不到考试的目的。如果
27、是大型的考试,比如英语四级考试,还要担心试题是否被泄漏的等问题(现在已经有类似问题的出现,才会有现在说的花卷)。印刷试卷:组织考试,印刷试卷费工费时,成本高,而且对于纸资源也是一种浪费,而且印刷的时候,也会担心试题被泄漏的问题。组织学生考试:监考人资源的浪费,和教师资源的匮乏,如何调配也是一个难题,如果是全国统一考试,还要涉与不同区域同时考试的问题。学生统一考试:由于是同一时间,同一地点,同一试题,考生作弊问题便会出现,而且是非常难解决的问题,再加上每个监考员监考的严格程度不同,这些人为因素难控制,使考试难公平,公正。教师阅卷:教师阅卷比较容易出错,会造成人为的不公正性。成绩统计:当成绩录入时
28、,数字的混乱会导致录入者输入错误或者看错。2.2 可行性分析可行性分析也称为可行性研究,即是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、管理的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间确定问题是否能够解决。该系统的可行性分析包括以下几个方面的容。2.2.1经济可行性在线考试必然会在今后的教学管理上成为主要的考试形式。开发一套能满足一般考试的需要,并实现试卷生成、评判自动化的在线考试系统。在减少由于人为原因导致试卷阅卷的不公正的同时,也可以让教师的工作量得以减少,有更多的时间去备课教学。本
29、系统如果用在一些辅助教育类的上,那经济效果是很明显的;如果是用在学校的教学管理上,会得以发挥其潜在的经济效益,比如印刷试卷的费用等。因此,本系统在经济上是可行的。2.2.2技术可行性技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软件能否满足开发者的需要等。硬件方面,硬件的更新速度之快,可靠性越来越高,目前一般的硬件平台均能满足次系统的需要。软件方面,编程的软件以与Web服务器等均已具备,并且环境变量已经搭好,数据库用MySQL存储大量的数据,MySQL开源化,目前已经很成熟,在灵活、安全和易用方面均能提供良好的支持。因此,系统的软件开发平台已经成熟可行。2.3 设计目标在线考试
30、系统的总体目标:1. 本系统提供给管理员类用户、教师类用户与学生类用户使用。不同的用户类型所能完成的功能不同。管理员类用户可以对于已经注册的考生与系统中已经存在的教师进行删除操作,对于未注册过的考生与系统中未存在的教师进行添加操作;教师类用户可以创建试题、删除试题、修改试题,也可进行试题维护、修改密码以与对成绩的统计;学生类用户主要是参与考试,完成试卷,查询成绩。2. 考试数据的存放和处理过程必须,需要一定的安全性保障若考生需要查卷,经审核方可以。3. 题目的选择具有稳定性、随机性。稳定性就是每试卷总体的难易程度要近似一样,保证每一次考试对每一个考生是公平的,随机性可以避免作弊的发生。4. 适
31、时的试题题库更新,试题题型包括判断题、选择题类型。试题库的更新由管理员类用户完成。学生类用户不允许对试题进行更新。5. 实现现代考试网络化。2.4 功能要求系统具备的基本功能:1.用户登录与注册对用户进行识别、验证;没有注册的用户跳转到用户注册页面;2.考试模块考生选择自己想要参加的考试类别,并进行考试,考试完成以后可以获得当考试成绩。3.历史成绩模块-考生可以看到自己以前参加的考试成绩。以对自己的进步状况进行一次把握。4.试题维护模块-教师选择试题的类别,然后针对该试题分类中的所有试题进行维护,可以添加新题目,也可以对现在有的题目进行修改或者删除处理。5.试卷设置模块-教师对题库中的题目按照
32、一定分类标准存放,包括分类的添加、修改和删除操作等。6.历史成绩管理模块-教师可以看到模式体分类的整体考试情况,考试成绩分布情况,可以判断出题库中的题目难以水平,并可以在以后的维护中做出适当调整。7.考生管理-系统管理员可以对已经注册的考生进行删除操作,对于未注册的考生进行增加操作。8.教师管理-系统管理员可以对系统已经存在的教师进行删除操作,对于未在系统中存在的教师进行增加操作。9.修改密码模块-教师和考生可以在已经登录成功的页面点击修改密码,可以修改本人登录此考试系统的登录密码。除了实现上述功能以外,在线考试系统还应该具有简洁、易用的界面,安全性要高,稳定性要强。根据以上的需求分析,画出本
33、系统的Use Case图,如图2.2所示:管理员教师管理考试考生管理考试登 录教师注 册试题维护考试考生在线考试考试试卷设置考试历史成绩绩历史成绩管理修改密码图2.2 在线考试系统的Use Case图2.5 系统开发环境配置1. 操作系统:Windows 72. 存:4G3. CPU:2.00GHZ4. Java平台:JDK 5.05. Web服务器:Tomcat6.06. 数据库服务器:MySQL7. 开发平台: MyEclipse6.0第三章 系统设计3.1数据库设计在对网上考试系统数据库部分进行设计的过程中,通过对系统功能进行需求分析得到系统的基本信息表,详细设计过程如下介绍。3.1.1
34、 数据库需求分析需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。对于本系统而言,系统的角色分为管理员、教师、学生,这需要3个表,而考生考试,需要一个存放题库的表,考试的类别不同,也需要一个存放类别的表,考生考试完毕后,需要一个存放考试成绩的表。综合以上分析,要实现上面的所有功能模块,数据库共要设计六个表,它们分别是:试卷类别表、用户表、用户成绩表、教师表、管理员表、题库表。3.1.2 数据库表设计用户信息表,用来存放考生信息,如表3-1所示:表3-1用户信息表字段名类型长度是否为主键可否为空说明user_
35、idint11是否用户的idusernamevarchar20否否登录用户名passwordvarchar20否否用户登录密码realnamevarchar20否否用户真实教师信息表,存放教师信息,如表3-2所示:表3-2教师信息表字段名类型长度是否为主键可否为空说明teacher_idint11是否教师的idteachernamevarchar20否否教师登录名passwordvarchar20否否教师登录密码realnamevarchar20否否教师真实管理员信息表,存放管理员信息,如表3-3所示:表3-3管理员信息表字段名类型长度是否为主键可否为空说明adusernamevarchar2
36、0是否管理员登录名passwordvarchar20否否管理员登录密码realnamevarchar20否否管理员真实题库信息表,存放考试题目以与答案等信息,如表3-4所示:表3-4题库信息表字段名类型长度是否为主键可否为空说明question_idint10是否试题编号category_idint10否否试题分类编号subjectvarchar300否否题目choice_avarchar100否否选项Achoice_bvarchar100否否选项Bchoice_cvarchar100否否选项Cchoice_dvarchar100否否选项Danswerchar10否否正确答案成绩表,存放考生考
37、试时间以与成绩等信息,如表3-5所示表3-5成绩表字段名类型长度是否为主键可否为空说明record_idint10是否考试记录编号usernamevarchar20否否考试用户名category_idchar10否否试题分类编号test_timechar14否否考试时间test_resultint11否否考试成绩试卷类别表,存放试卷类别信息,包括试卷分类名称、试卷题目等,如表3-6所示表3-6试卷类别表字段名类型长度是否为主键可否为空说明category_idint11是否试题分类编号category_namevarchar20否否试题分类名称question_numberint10否否试题数
38、目3.1.3数据库逻辑结构设计1 关系图本系统各表之间的关系如下图3-1示:图3-1关系图2完整性设计完整性要求用于描述各种信息之间的制约关系以与关联关系,各个数据项的取值围以与各个数据项是否可以取值。根据实际需要,采取一定的手段来满足用户的完整性需求。域完整性约束要求属性值必须在域中。实体完整性约束要求主键必须唯一且不能为空。如用户信息表中的用户名设置为主键,并且要求唯一且不能为空。3.2系统结构设计网上考试系统是一个典型的数据库应用程序,主要有管理员、教师和学生三大模块组成,各模块功能如下:管理员模块:该模块包含2个功能,一个为考生管理,系统管理员可以对已经注册的考生进行删除操作,对于未注
39、册的考生进行增加操作;另一个为教师管理,系统管理员可以对教师进行增加、删除操作。教师模块:该模块包含4个功能,分别为试卷设置、试题维护、历史成绩、修改密码。教师成功登录该系统后,能够进行修改个人信息,添加、修改、删除试题、试卷类别操作,也可对考生的成绩进行统计。学生模块:该模块包含3个功能,分别为开始考试、历史成绩、修改密码。学生成功登录该系统后,能够进行考试、查询成绩、修改密码。系统功能结构如图3-2所示:系统功能教师模块管理员模块学生模块开始考试修改密码试题维护试卷设置历史成绩考生管理教师管理历史成绩修改密码图3-2系统功能结构图3.3用户界面设计页面上部采用一个Logo图片和适当的标识,
40、表明当前的系统名称。接下来是帮助连接和退出系统的连接。然后下部页面的主题分为左右两部分,左边是导航模块部分,其中放置迁移到不同功能模块的按钮,右边是页面的主要操作区域,不同页面的不同显示主要在此体现。学生角色的模版页面如图3-3所示:在线考试系统Logo图片。 帮助 退出登录欢迎您!XXX开始考试历史成绩修改密码图3-3 学生角色模版每个模块都包含多个页面,再次挑选几个比较低型或者重要的页面进行详细描述。其他的页面结构比较类似或者比较简单,不一一详述。学生开始考试的时候,首先需要选择试卷类型,或者也可以叫做试题分类。在此页面中采用下拉列表框的形式进行,如图3-4所示:在线考试系统Logo图片。
41、 帮助 退出登录欢迎您!XXX请选择试题的分类:确定会计基础 开始考试历史成绩修改密码图3-4 试题分类选择页面草图选择试题分类以后,即是学生答题页面。答题页面的主体应该是试题和试题的选项。考虑到本系统需要在题目结束以后立即知道考试结果,所以决定采用所有试题的形式都是ABCD型的选择题,页面应该针对这些题目选项设置单选按钮。在答题容的上方,应该能够给考生信息,说明当前的题目是全部题目的第几道,以与总共有几道题,使得考生可以把握整个考试进度。同时考虑到考生在时间允许的情况下,需要在题目间前后迁移,所以在题目的下方,还应该有前后翻页的按钮。对应教师角色的模版略有不同,模块多了几个,而且页面顶端的标
42、识也有所区别。对应的模版页面如图3-5所示。在线考试系统(管理界面)Logo图片。 帮助 退出登录欢迎您!XXX试题维护试卷设置成绩查询修改密码图3-11 教师角色模版页面图3-5 管理员角色模版页面第四章 系统实现本系统包括3个不同的角色,即学生、教师、管理员。不同角色的功能有所不同,学生的功能包括:考试模块,修改密码,成绩查询模块。教师的功能包括:试卷类别管理、试题管理、修改密码、成绩管理。管理员的功能包括:教师管理和考生管理。4.1 数据库连接的实现方法从系统功能模块划分中可以看出,各模块虽然是独立的,但又统一于同一数据库中,便于管理员管理维护数据库,同时也便于教师和学生的操作。在介绍系
43、统各模块的实现方法之前,首先介绍系统与MySQL数据库的连接方法,再介绍系统主要部分的实现方法。创建与数据库的连接:首先要将mysql的驱动包放在tomcat/lib目录下;:利用语句进行对数据库的操作,以下仅是对用户表查询的语句:<%page contentType="text/html;charset=gb2312" %><%page language="java" import="java.sql.*" %><%/声明数据库连接对象,初始化为空Connection conn = null;State
44、ment stmt = null;ResultSet rs = null;try /载入MySQL的JDBC驱动类 Class.forName(".mysql.jdbc.Driver"); /获得数据库连接 String sConn = "jdbc:mysql:/localhost/Myexam?user=root&password=890427" conn = DriverManager.getConnection( sConn ); /创建Statement对象 stmt = conn.createStatement(); /执行SQL语句
45、String query = "select * from user" rs = stmt.executeQuery( query );%> catch(Exception e)/获得数据库连接出错 System.out.println("error occured!");finally /释放数据库连接 rs.close(); stmt.close(); conn.close();%>4.2 登陆注册模块4.2.1 登录模块用户登录页面比较简单,为防止用户登录的操作错误,应设置错误处理页面,在登录操作过程中,一般发生的错误有:用户输入了错误
46、的用户名或密码、用户直接单击了登录按钮,对上述情况的判断就要通过Servlet文件来实现。当用户登录的时候,输入的或者密码有其中一项为空时,会有提示框提示,提示您或者密码不能为空。实现这个功能的是用javascript实现的,具体代码如下所示:验证输入不为空的脚本代码 <script type="text/javascript"> 定义了一个名为checkForm的查询表单函数function checkForm(form) 、如果value为空,会提示不能为空if(form.teachername.value="") alert("
47、;账号不能为空"); 让form表单中的teachername控件获得焦点(光标),回到输入框位置。form.teachername.focus();return false; if(form.password.value="") alert("密码不能为空"); form.password.focus(); return false; return ture; </script>在登录页面时,当用户提交了登录资料后,就由“loginvc.jsp”这个页面进行验证,它的工作主要是连接到数据库,从数据中找出输入的用户名和密码并判断其是
48、否一致。如果用户输入了错误的用户名和密码,就会跳出一个登录失败的页面。用户可以点击返回按钮回到其刚才登录的界面,然后重新输入用户名与密码进行再次登录。若用户提交正确的用户和密码后,如果记录验证无误,就通过JSP重定向语句response.sendRedirect()跳转到相应的主界面。教师以与管理员的登录验证跟考生相似,只是查询条件和连接的数据库表不同,以与登陆成功之后,跳转的页面不同。4.2.2 考生注册模块在此模块,考生需要填写用户名、密码、确认密码、真实。如若填写中缺少一项,那么会有提示,其功能也是由上面所说的一样,通过调用javascript实现的,这里只提供下截图,主要代码如上,如图
49、4-1所示:图4-1 注册提示页面当用户填写的容完全符合注册标准后,点击注册按钮,会转到注册成功的页面;如若用户名已经被注册,会转到注册失败页面,提醒注册用户可能是该用户名已经注册。在此只以注册成功的页面为例,如图4-2所示:图4-2 注册成功页面完成注册模块的主要代码如下所示:首先获取上个页面传过来的数据,用户名、密码、真实String username = request.getParameter("username"); String password = request.getParameter("password"); String realn
50、ame = request.getParameter("realname");out.println(username);/打印出username其次开始连接数据库try Class.forName( ".mysql.jdbc.Driver" ).newInstance(); Connection conn=DriverManager.getConnection("jdbc:mysql:/localhost:3306/myexam?user=root&password=890427&useUnicode=true&cha
51、racterEncoding=gbk"); Statement stmt=conn.createStatement(); ResultSet rs=null;查询user表,看用户名是否存在 String sql="select * from user where username like '"+username+"'" rs=stmt.executeQuery(sql); 如果存在,提示“ 您好,您注册的用户名已经存在,请重新输入 ”,如果不存在,把接收过来的值付给新的变量: String s_username=reques
52、t.getParameter("username"); String s_password=request.getParameter("password"); String s_realname=request.getParameter("realname"); 执行SQL插入语句,把得到的值插入到user表中sql = "insert into user(username,password,realname) value('"+username+"','"+password+"','"+realname+"')"如果插入成功,提示:“恭喜您注册成功!”4.3考生模块考生登录系统并且用户名也密码正确后,会直接跳转到学生主页,本页面中,考生可以在左侧选择自己下一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海视觉艺术学院《刑法前沿研究》2023-2024学年第一学期期末试卷
- 上海视觉艺术学院《城乡道路与交通》2023-2024学年第一学期期末试卷
- 人力资源述职报告范文
- 上海商学院《市场竞争软件模拟训练》2023-2024学年第一学期期末试卷
- 课题申报书:共同富裕目标下数智化影响人的全面发展的理论机制及路径研究
- 课题申报书:高铁时代关中平原城市群收缩识别及高铁多维效应研究
- 《不懂就要问》公开课一等奖创新教案
- 1《短歌行》公开课一等奖创新教学设计 统编版高中语文必修上册
- 上海闵行职业技术学院《面点工艺学实训》2023-2024学年第一学期期末试卷
- 中建集团面试自我介绍
- 蔬菜采购框架合同模板
- 2025企业年会盛典
- 读书分享《非暴力沟通》课件(图文)
- 专题 与角度有关的计算问题(35题提分练)2024-2025学年七年级数学上册同步课堂(北师大版2024)
- 网格员调解员培训
- 浙江省绍兴市2025届高三上学期一模地理试题 含解析
- 安全与急救学习通超星期末考试答案章节答案2024年
- 人教 九下 历史 第五单元《社会主义的发展与挫折》课件
- 医疗器械注册专员培训
- 金属冶炼知识培训
- 2024-2025学年度广东省春季高考英语模拟试卷(解析版) - 副本
评论
0/150
提交评论