搜档网
当前位置:搜档网 › 基于web的英语四六级模拟在线考试系统本科毕业论文

基于web的英语四六级模拟在线考试系统本科毕业论文

基于web的英语四六级模拟在线考试系统

摘要

随着科学技术的不断提高,计算机科学技术日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。英语四六级模拟在线考试系统的设计与实现与人们的生活密切相关,传统的网上信息管理系统的设计与实现模式呆板硬式,质量也不高。因此我们开发了这个英语四六级模拟在线考试系统的设计与实现来管理网络信息管理。

本文从信息系统分析的角度详细讲述了英语四六级模拟在线考试系统的设计与实现的开发过程。全文共分六章,首先介绍了系统的开发背景以及课题意义,并对系统进行了详细的可行性分析包括对软件的开发工具MySql和JAVA工作原理的详细介绍,然后,按照软件的开发步骤,从英语四六级模拟在线考试系统的设计与实现的需求分析到总体设计到详细设计详细阐述了系统的功能实现过程。最后,对系统功能进行了专门测试,体现了系统人性化程度高、管理高效、可维护强等特点。

关键词:英语四六级模拟在线考试系统,B/S架构,MySql,java

The online test system of English four six level simulation

based on Web

Abstract

With the continuous improvement of science and technology, computer science and technology matures, its powerful functions have been deeply recognized, it has entered the human society in various fields and play an increasingly important role. The design and implementation of the online examination system of English four six level simulation is closely related to people's life. The traditional online information management system is designed and implemented, and the quality is not high. So we developed the design and implementation of the English four six level simulation online examination system to manage the network information management.

This paper describes the design and implementation of the English four six level simulation online examination system from the point of view of information system analysis. The full text is divided into six chapters, first introduced the system development background and significance of the topic, and the system for the detailed feasibility analysis includes the software development tools MySQL and Java work principle is introduced in detail, then, in accordance with the software development process, from the CET mode quasi online examination system design and implementation of the demand analysis to the overall design to detailed design are elaborated in detail the system function of the realization of the process. At last, the system function is tested, which reflects the characteristics of the system, such as high degree of humanization, high management, high maintenance and so on.

Key words:English four six level simulation online examination system, B/S architecture, MySql, Java

目录

目录 (3)

前言 (5)

1 概述 (5)

1.1系统说明 (5)

1.2系统特点 (6)

2 开发环境介绍 (6)

2.1 JAVA简介 (6)

2.2 JSP简介 (9)

2.3S TRUTS构架技术简介 (10)

2.4系统数据库介绍 (14)

2.4.1 数据库的概念 (14)

2.4.2 “结构化查询语言”(SQL)简介 (15)

2.5M Y S QL介绍 (16)

2.6系统运行环境配置 (18)

3 总体设计 (19)

3.1开发背景 (19)

3.2功能分析 (20)

3.3数据流图 (21)

3.4系统结构分析 (22)

3.4.1 逻辑结构 (22)

3.4.2 物理结构 (23)

4 数据库设计 (23)

4.1数据表的介绍 (23)

4.2用户模块设计概述 (25)

5 详细设计 (26)

5.1登陆介绍 (27)

5.2学生功能列表: (28)

5.3在线考试界面 (29)

5.4管理员后天管理功能 (29)

6 系统调试和测试 (31)

6.1测试的目标 (31)

6.2测试的步骤 (31)

6.3测试的内容 (32)

7 总结 (33)

参考文献 (34)

致谢 (35)

前言

当今,越来越多的英语四六级模拟在线考试系统话题走进了我们的生活,。然而传统的信息管理系统实现不仅模式单一,内容也少,所以我们认为英语四六级模拟在线考试系统也可以通过网络来达到想要的效果。所以我们打算开发“英语四六级模拟在线考试系统”。英语四六级模拟在线考试系统是集管理、经营、服务为一体的有偿服务劳动,是英语四六级模拟在线考试系统社会化、专业化、英语四六级模拟在线考试系统现代化发展的有效途径。计算机和网络方面越来越普及的时代已经到了,普通的英语四六级模拟在线考试系统管理效率低,已经出现疲态,所以利用网络来搭建一个英语四六级模拟在线考试系统既符合时代潮流又能为社会的知识企业带来很多利益,在学习java知识,正可以用到开发网站上面,从理论层次过渡到实践方面,从书本走到生活,提高自己的编程能力,所以创建一个英语四六级模拟在线考试系统对自己很有意义。

1 概述

1.1 系统说明

目前,我国网络英语四六级模拟在线考试系统软件的市场可以分为传统的信息管理系统平台软件和网络版的网上信息管理系统软件两种。

传统的信息管理系统软件是指由企业机构自身向软件企业机构订制,打造适合于企业机构自身特点的软件。这种软件的缺点是需要花费大额的资金购买自己的数据库,培养专业的技术人员及维护系统的正常运行。优点是能够在一定程度上把握企业机构自身的企业信息安全,防止机密外泄。

网络版的英语四六级模拟在线考试系统软件是指由软件开发商自己研发的通用软件,能够在基本、普遍的功能上满足更广泛意义上的同一类型企业机构。这种软件的缺点是发展的阶段尚浅,没有形成稳定的行业规范。再加上开发商良莠不齐,产品质量和售后服务得不到保障。优点是价格比较便宜,使用方便、快捷,特别适合我国中小的企业网站广泛应用。

目前在该领域国内的研究现况分为几个板块,一种是简单点的纯C/S的单机应用的系统,或基于单机使用的借助VPN或远程接入组件达到联网效果的系统,这一类的系统只能满足小型企业机构的简单管理.这一类的系统往往都是九十年代的开发语言开发,所以在软件的架构方面有一定的局限性。

第二类是2000年以后的开发语言开发的系统,这一类的系统一般在技术方面都比较先进一些。

从功能上讲,英语四六级模拟在线考试系统软件主要分为几个层次:

功能全面,系统界面条例清晰明了,方便管理。

权限分明,不同用户不同权限。

(3)应用B/S架构的网上信息管理系统管理软件,这一类产品在网上信息管理系统管理软件行业比较少,因为网上信息管理系统行业不同于别的行业,他在管理的时候数据的浏览量相当大,运算量也比较大,并且客户的需求千变万化,个性话的设置比较多,因此,B/S的网页形式的网上信息管理系统管理软件在应用时有一定的局限性。

(4)应用最新技术开发的系统如微软的.NET的语言,所开发出来的系统支持互联网直连,并且由于开发语言比较先进,所做出来的系统界面比较美观,技术实力强的公司的产品功能也比较灵活,模块也比较丰富,这一类的产品的功能也比较深入细致,更加人性化。这样的集中式应用的系统能更好的满足大中企业的统一管控的管理模式,因为支持互联网直连,所以不受地域的限制,并且这一类的系统一般都是整体解决方案,功能涉及到网络企业,这一类产品也是网上信息管理系统的发展方向。

1.2 系统特点

(1)本系统完全基于jsp技术,只要有一台电脑并且能联网就可以浏览本网站。

(2)采用JSP技术和MYSQL数据库开发,具有代码易懂,可扩展性高,性能高、数据安全等特点

(3)可以完全通过网页登录管理系统,维护方便。

(4)各个功能模块独立性强,可以根据实际情况任意组合。

(5)具有清新简洁方便且易懂的界面,操作简单。

(6)支持所有的Windows系列操作系统以及移动终端网页访问。

2 开发环境介绍

2.1 java简介

在经历了以大型机为代表的集中计算模式和以PC为代表的分散计算模式之

后,互联网的出现使得计算模式进入了网络计算时代(异构时代)。网络计算模式的一个特点是计算机是异构的,即计算机的类型和操作系统是不一样的。网络计算模式的另一个特点是代码可以通过网络在各种计算机上进行迁移。这就迫切需要一种跨平台的编程语言,使得用其编写的程序能够在网络中的各种计算机上正常运行,Java就是在这种需求下产生的。正是因为Java语言符合了互联网时代的发展要求,才使它获得了巨大的成功。

Java是一种网络编程语言,是一种既面向对象又可跨平台的语言,具有简单、解释型、动态、多线程、安全等特点。Java是一个广泛使用的网络编程语言,是一种新的计算概念。首先,作为一种程序设计语言,它简单、面向对象、不依赖于机器的结构、具有可移植性、鲁棒性、安全性、并且提供了并发的机制、具有很高性能。其次,它最大限度地利用了网络,Java的小应用程序(applet)可在网络上传输而不受CPU和环境的限制。另外,Java还提供了丰富的类库,使程序设计者可以很方便地建立自己的系统。

Java是一种面向对象程序设计语言。面向对象技术提倡模拟现实世界的思维方式,数据与操作相绑定的程序风格,符合现代大规模软件开发的要求和潮流,正逐步替代面向过程的程序设计技术,成为计算机应用开发领域的主流趋势。同时,Java也是一种跨平台的语言。在单机时代,程序进程之间靠共享存储进行变量交换。在网络时代,运行在不同宿主机上的程序按网络协议进行无格式的消息(二进制字符流)交换,消息的语义由交换程序双方维护。不可否认,现在正处在一个网络异构时代,不同的计算机如果要配合运行一个程序,其编程语言一定是跨平台的。Java以跨平台、安全性高等特点受到大部分程序员的欢迎。

Java不同于一般的编译执行计算机语言和解释执行计算机语言。Java首先将源代码编译成字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现“一次编译、到处执行”的跨平台特性。不过,这同时也在一定程度上降低了Java程序的运行效率。但在J2SE 1.4.2发布后,Java的执行速度有了大幅提升。

与传统程序不同,Sun公司在推出Java时就将其作为一种开放的技术。全球数以万计的Java开发公司被要求所设计的Java组件必须相互兼容。“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开

发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。

Java语言的前身Oak在C++的基础上开发,而C++在C的基础上开发。因此,Java和C、C++具有许多相似之处。Java继承了C、C++的优点,增加了一些实用的功能,使Java 语言更加精炼。Java摒弃了C、C++的缺点,去掉了C、C++的指针运算、结构体定义、手工释放内存等容易引起错误的功能和特征,增强了安全性,也使其更容易被接受和学习。

虽然Java在C++的基础上开发,但并不是C++的增强版,也不是用来取代C++的。Java与C++既不向上兼容,也不向下兼容,两者将长时间共存。Java在理论和实践上都与C++有着重要的区别。Java是独立于平台,面向Internet的分布式编程语言。Java对Internet编程的影响如同C和C++对系统编程的影响。Java的出现改变了编程方式,但Java并不是孤立存在的一种语言,而是计算机语言多年演变的结果。

用Java语言可以编写两种程序,一种是应用程序(Application),一种是小应用程序(Applet)。应用程序可以独立运行,可以用在网络,多媒体等开发上。小应用程序不可以独立运行,是嵌入到Web网页中由带有Java插件的浏览器解释运行,主要用在Internet上。

Java至今主要发展出3个领域的应用平台:Java 2 Platform,Standard Edition(Java SE)、Java 2 Platform,Enterprise Edition(Java EE)和Java 2 Platform,Micro Edition(Java ME)。

Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。

虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。

这种平等和一致性并不仅限于 Java 开发工具。尽管 Eclipse 是使用 Java 语言开发的,但它的用途并不限于 Java 语言;例如,支持诸如 C/C++、COBOL 和Eiffel 等编程语言的插件已经可用,或预计会推出。Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。

基于Eclipse 的应用程序的突出例子是IBM 的WebSphere Studio Workbench,它构成了 IBM Java 开发工具系列的基础。例如,WebSphere Studio Application Developer 添加了对 JSP、servlet、EJB、XML、Web 服务和数据库访问的支持。

2.2 jsp简介

Java Server Pages(JSP)技术,已成为web软件开发者们最喜爱的工具. 通过JSP,开发者们设计动态网页时可以不必了解其他项目的知识. 同时,web开发者们可以用一个可扩展的标签机制去增强软件成分后台能力.

在延伸发展的过程中通过Java的一致性方法提供更多的支持,以发展支持多种语言的应用软件. Java Server Pages标准标签库规定,在其他的函数中,可以把标签定位成适合自己使用的格式.

由上可以看出,本文首先简短地介绍Java Server Pages的技术,这样可以你更好地了解如何利用这些去解决国际化的问题。稍后我讨论的几个关键问题在于发展基于多种语言web应用,并说明如何解决这些问题通过Java Server Pages:如编码的特性、格式和和对它的分析。

Java Server Pages的技术

Java Server Pages(和一些相关的技术)的构成了web应用层. 通过JSP,设计者们在网络上能创造动态网页、交互、商业逻辑、数据库和其他一些服务.

Java Server Pages

网页开发者们利用的JSP技术是由HTML,XML或其他内容有静态XML式的标签,连接软件库的基本软件,以及典型的Java程序语言编写的. Java技术,尤其重要的是JavaBeans组件架构(作为通用JSP衔接Java的接口)、Java数据库连接(JDBC)连接SQL数据库,供各种XML库来处理. 编辑JSP本身就是把Java代码的编译成servlets执行. servlets是web服务器的扩展,现已编入相关的服务器,因此执行速度比Scripting语言快. Servlets直接地用Java语言进行编程并且和JSP页语言常常在一起使用,servlets充当管理员的角色而JSP作为应用

程序的的视图. JavaServer和后台的servlet处理技术提供了广泛的支持和响应HTTP请求信息以及维修通过cookies或URL重写.

使用JSP技术的一个重要原因是,它使网页作者和应用开发工作者们分开. 当它是可以直接嵌入到JSP页声明Java时,开发者们已经认识到这是目前最好的选择,避免标签习惯.

Java Server Pages标准标签库

Java Server Pages标准标签库 (JSTL)包含几个方面的习惯行为包括在JSP 中常用的功能。标签库借鉴的经验,它的许多方面都取得了发展自己的库,并提供了标准接口,可以依赖的应用软件,他们独立于服务器运行.

除了传统的标签外,JSTL还引入了语言表达,这使在JSP页中进一步降低scripting语言表达,并且标签库有效地限制在JSP网页中使用scripting和标签库. 强化语言文字的表达,并能抑制scripting,已经被并入了JSP2.0规格,因此JSTL只有在JSP1.2中才需要使用只是它们.

传统的标签主要涉及的领域是:

可变操控: 在"核心"库中的一些行动让你定义变量在各种变数范围(页,请求,会议,和应用),除去它们,或使之成为新产生的一页.

流量控制: "核心"库中的一些行为提供基于流量控制结构--例如引起条件反应的和迭代器--必须消除scripting语言嵌入代码.

URL有关的行动: "核心"库中的一些行为,让JSP入口的内容界定URL,重写URL的形式从内部对外部形式(这可能包括收集资料,追踪信息),或以不同的方式网页.

XML处理: "XML"库的行为包括分解XML文件并且提取使用XPath表示,基于流量控制XPath表示,用XSLT格式来转换.

进入相关数据库: "SQL"库的一些行为允许web应用程序去执行简单SQL查询和更新.

在设计基于多种语言的web应用程序时,你必须首先决定如何确定用户的语言和喜好,如何选择符合这些规定. 本节首先介绍了web应用的外部环境和必须处理的条件.

2.3 Struts构架技术简介

Struts最早是作为Apache Jakarta项目的组成部分问世运作。项目的创立

者希望通过对该项目的研究,改进和提高Java Server Pages、Servlet、标签库以及面向对象的技术水准。

Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。它的目的是为了减少在运用MVC设计模型来开发Web应用的时间。你仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。

Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。

除此之外,Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。

关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。

MVC即Model-View-Controller的缩写,是一种常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。Struts的工作原理,如图所示:

struts框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的web应用程序的开发。

本章详细讨论struts架构。我们将看到struts是如何清晰地区分控制,事务逻辑和外观,从而简化了开发应用程序过程的。我们还将介绍struts提供的类如何使得开发工作更加简单,这些类包括:

控制程序流程的类

实现和执行程序事务逻辑的类

自定义的标记库使得创建和验证HTML表单更加容易

Struts体系结构:

让我们从MVC角度观察struts框架中的组件框架中三个部分:模型,视窗和控制器。模型在struts框架中,模型分为两个部分:

系统的内部状态

可以改变状态的操作(事务逻辑)

内部状态通常由一组ActinForm JavaBean 表示。根据设计或应用程序复杂度的不同,这些Bean 可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。

大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的bean 调用。比如英语四六级模拟在线考试系统车bean ,它拥有用户购买商品的信息,可能还有checkOut()方法用来检查用户的信用卡,并向仓库发定货信息。

小型程序中,操作可能会被内嵌在Action 类,它是struts 框架中控制器角色的一部分。当逻辑简单时这个方法很适合。

建议用户将事务逻辑(要做什么)与Action 类所扮演的角色(决定做什么)分开。视图由JSP 建立,struts 包含扩展自定义标签库,可以简化创建完全国际化用户界面的过程。struts 中,基本的控制器组件是ActionServlet 类中的实例servelt ,实际使用的servlet 在配置文件中由一组映射(由ActionMapping 类进行描述)进行定义。

框架中所使用的组件:

ActionServlet 控制器

ActionClass 包含事务逻辑

ActionForm 显示模块数据

ActionMapping 帮助控制器将请求映射到操作

ActionForward 用来指示操作转移的对象

ActionError 用来存储和回收错误

Struts标记库可以减轻开发显示层次的工作

以下是Struts的MVC图:

2.4 系统数据库介绍

2.4.1 数据库的概念

数据库是以数据(数据就是对客观事物的符号表示,是存储在计算机中的模拟客观事物的一系列信息。对于计算机科学而言,数据的含义极为广泛,凡是可存储的信息,如文本、图象、声音等都可以通过二进制编码而形成数据)为对象,指为了满足某种特定应用的需要,按照一定的数据模型在计算机系统中组织、存储和使用数据的数据集合。数据库系统是管理大量的、持久的、可靠的和共享的数据的工具。

数据库有以下特点:

集成性:数据有两层含义,一个是数据本身,一个是数据之间的关系。集成就是指把数据集中到一起来,按照一定的结构形式进行存储,并通过一系列的机制约束数据之间的关系,避免数据重复或不合要求。

量大性:数据库中存放的数据量一般都比较庞大,不能同时在内存中全部调用,而只能通过外部存储器存储,通常使用大容量的可移动磁盘或硬盘等设备。

共享性:指多个不同的用户,为了不同的目的,可以使用不同的语言,通过

不同的方式,访问同一个数据库,而访问的范围、可执行的操作会有所区别。数据库系统会提供相应的机制,保证这种共享在有序的条件下进行,可以避免因为同步而造成的错误。

持久性:一般来说,数据库中是数据都需要长期保存。

在英语四六级模拟在线考试系统中,Web提供了与客户进行通信联络的有效手段,得用Web技术,可实现Web服务器与数据库系统的连接,完成对数据的处理与查询。用户可以通过操作简单易学的浏览器来查询处理所需要的各种数据。实现Web服务器与数据库的连接最主要的方法之一:是利用中间件技术在两者之间建立连接和通信,如CGI和JSP应用编程接口。Web服务器通过调用CGI程序实现与Web浏览器的交互,即CGI程序接受浏览器发给Web服务器的信息,进行处理后,将相应结果再送给Web服务器,通过Web服务器将信息传送给浏览器。但CGI程序在响应速度和资源利用等方面有较大局限性,客户端每请求一个CGI 程序,服务器便打开一个进程,当请求的数量较大时容易引起“瓶颈”现象。因此,开发人员常利用JSP编程来扩展服务器功能,JSP程序占用系统资源少,运行效率较高,但它的编程较CGI程序更为复杂。

2.4.2 “结构化查询语言”(SQL)简介

“结构化查询语言”(SQL)是数据库的标准语言。在Active Sever Pages 中,无论何时你要访问一个数据库,你就要使用SQL语言。因此,掌握好SQL对JSP 编程是非常重要的。

所有SQL数据库中的数据都存储在表中。一个表由行和列组成。这种语言被设计为不允许你按照某种特定的顺序来取出记录,因为这样做会降低SQL Sever 取记录的效率。使用SQL,你只能按查询条件来读取记录。

当你执行一个SQL查询时,通过使用包括逻辑运算符的查询条件,你可以得到一个记录列表。此时查询结果是来自一个或多个表。

SQL查询的句法非常简单。假设有一个名为email_table 的表,包含名字和地址两个字段,要得到Bill Gates 的email地址,你可以使用下面的查询:SELECT email from email_table WHERE name=”Bill Gates”

SELECT语句的结构看起来很直观。如果你请一个朋友从一个表中为你选择一组记录,你也许以非常相似的方式提出你的要求。在SQL SELECT语句中,你“SELECT特定的列FROM一个表WHERE某些列满足一个特定的条件”。

相关主题