2、。4数据结构.错误!未定义书签。5模块设计.135.1JSP编辑模块.错误!未定义书签。2/145.1.1javabean.错误!未定义书签。5.1.2servlet.错误!未定义书签。5.1.3jsp页面.错误!未定义书签。6接口设计.错误!未定义书签。6.1数据库与系统.错误!未定义书签。6.1.1用户数据库.错误!未定义书签。6.1.2试题数据库.错误!未定义书签。5.2MVC模式内部连接.错误!未定义书签。1、引言1.1设计背景随着计算机网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了教学,通过计算机实现异地教育和培训。如今,计算机硬件技术的发
3、展已经达到了相当高的水平。但是,教学软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到教学当中去,这就给软件设计人员提出了更高的设计要求。教学包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实现的环节。在我国,虽然教学已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容
4、易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,应用不断扩大,如教学和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。从而,在线考试系统设计成为当今教育的信息化趋势以及高校教育信息化系统建设的方向,其目的是充分利用学校现有的计算机软、硬件和网络资源实现无纸化考试以避免传统手工考试的不足。其意义在于:与传统考试模式相比,
6、程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在下文的设计报告3/14中将对设计进行详细的说明。在详细设计中,程序设计员可参考设计报告,在设计报告对在线考试系统所做的模块结构设计的基础上,对系统进行详细设计。在的软件测试以及软件维护阶段也可参考此说明书,以便于了解设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。1.3系统概述我们小组本次选择基于web的线考试系统的开发。成员经商量后分工完成各部分代码。模型(Model)用存放考生信息;视图(View)由多个jsp
7、构成。控制器通过数据库存储考生信息和题目信息。采用MVC模式,小组Javabean来实现。用于(Controller)为Servlet。2、开发规划2.1开发人员2.2开发计划我们小组本次选择在线考试系统的开发。采用MVC模式,小组成员经商量后分工完成各部分代码。模型(Model)用Javabean来实现。用于存放考生信息;视图(View)由多个jsp构成。控制器(Controller)为Servlet。通过数据库存储考生信息和题目信息。2016/7/4确定开发课题2016/7/4开发过程分工,设计文档初步撰写2016/7/5软件开发设计分析2016/7/
10、at的书籍(ISBN0-596-00318-8)1的封面也被设计成了一个公猫的形象。而Tomcat的Logo兼吉祥物也被设计成了一只公猫。Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的
11、进程单独运行的。当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。MySQLMySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,属于Oracle旗下公司。MySQL最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系
13、OS/2Wrap、Solaris、Windows等多种操作系统。3为多种编程语言提供了API。这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby,.NET和Tcl等。4支持多线程,充分利用CPU资源。5优化的SQL查询算法,有效地提高查询速度。6既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。7提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。8提供TCP/IP、ODBC和JDBC等多种数据库
14、连接途径。9提供用于管理、检查、优化数据库操作的管理工具。10支持大型的数据库。可以处理拥有上千万条记录的大型数据库。5/1411支持多种存储引擎。12.MySQL是开源的,所以你不需要支付额外的费用。13.MySQL使用标准的SQL数据语言形式。14.MySQL对PHP有很好的支持,PHP是目前最流行的Web开发语言。15.MySQL是可以定制的,采用了GPL协议,你可以修改源码来开发自己的MySQL系统。16.在线DDL/更改功能,数据架构支持动态应用程序和开发人员灵活性。17.复制全局事务标识,可支持自我修复式集群。18.复制无崩溃从机,可提高可用性。19.复
15、制多线程从机,可提高性能。开发工具Notebook我们采用最原始的记事本来编写我们的源代码。3、程序设计3.1需求概述功能需求系统需求6/143.2软件结构MVC模式示意图请求处理数控制器:数据处理部分,由多个读写servlet构成。视图:显示部分,由多个jsp页面构成是依据模型数据创建的。请求jsp页面显示数据存储数据数据:MySQL数据库模型:负责在数据库中存取数据,由一个Javabean构成。MVC模式图该系统中的MVC模式解析模型(Model):一个Javabean。用于存放考生信息,如:考生姓名Name、考号Number、密码Password