(强烈推荐)基于JAVA在线考试系统的设计与实现_毕业论文 联系客服

发布时间 : 星期一 文章(强烈推荐)基于JAVA在线考试系统的设计与实现_毕业论文更新完毕开始阅读848e41504531b90d6c85ec3a87c24028915f8587

View层用于与用户的交互; Controller层连接模块与视图,它可以是用户的请求得到恰当的视图予以显示,同时它也可以是用户的输入得到解释并将它们映射为模型层可执行的操作[1]。

2.1.2MVC的强势与劣势

优点:低耦合性,使得更改视图层代码就不用重新编译模型和控制器代码。高重用性和可适用性,允许你是用各种方式的视图来访问同一个服务器端的代码。快速的部署,使用MVC模式是的开发时间得到相当大的缩减[2]。

缺点:MVC的缺点是它没有明确的定义,不容易理解。

2.2 JAVA组件JAVABEANS

2.2.1 什么是JavaBeans

JavaBeans是一种企业级开发中的技术规范,凡是遵循该规范的类都称为JavaBeans类,又叫做pojo类。该规范主要包含以下几点:

1.所有的类都必须实现序列化接口。 2.所有的属性尽量定义为私有属性。 3.所有的方法定义为公有方法。

4.提供属性的get和set方法,通过该方法可以访问属性。

2.3 JavaSE概述

JavaSE是java Standard edition的缩写。JavaSE就是Java的标准版,主要用于桌面应用软件的编程。JavaSE 包含那些构成Java语言核心的类。比如:数据库连接、接口定义、输入输出、网络编程[3]。

JavaSE具有以下几个特点:第一,它比较容易开发;第二,它启动时间短,内存占用较少;第三,它还有元数据特性。

2.4关于STRUTS

2.4.1 Struts简介

Struts是开源软件。使用Struts的目的是为了帮助我们减少在运用MVC设计模型应用的时间。Struts已逐步越来越多运用于商业软件,是一种非常优秀的JavaSE MVC实现方式[4]。

2.4.2 Struts的主要功能

1.Struts包含一个controller servlet,能够将客户端的请求发送给Action对象。

2.它提供了一系列实用对象:通过Java reflection自动处理JavaBeans属性、提示和消息。Struts提供了它自身的控制器组件,并且整合了其他技术,用来提供模型和视图。Struts正逐步被运用,是性能良好的MVC实现方式[5]。

2.4.3 Struts工作原理

这里我们先来介绍一下MVC,MVC是Model-View-Controller的缩写。它作为称用得设计模式得到了广泛的运用。MVC 使数据接口和逻辑接口连接减弱,并且使得视图更加富有变化性。MVC使得程序逻辑清晰,更容易被人理解。

MVC的工作原理如下2-1所示:

2-1MVC的工作原理

接下来,我们说一下Struts,它作为MVC的一种实现。Struts继承了MVC的各项特性,具有MVC的特点。并根据JavaSE的特点,做出了相应的更改。Struts的工作原理,如下图2-2所示:

2-2Struts的工作原理

2.5 关于SWING

2.5.1 Swing简介

Swing是建立在AWT之上的组件集。除提供了AWT所缺少的、大量的附加组件外,Swing还提供了替代AWT重量组件的轻量组件。AWT中

文含义抽象窗口工具包(Abstract Window Toolkit)功能是Java开发用户界面最初的工具包。Swing还包括了一个用于实现插入式界面样式特性的图形用户界面的下层构件。因此,在不同的平台上,Swing组件都能保持组件的界面样式特性。例如双缓冲、调试图形和文本编辑包等[6]。

2.5.2 为什么需要Swing

Swing设计者采用的设计模式:模型——视图——控制器(MVC)模式。该设计模式遵循一个基本原则:它限制一个对象的功能的数量。防止一个按钮完成所有的事情。而应该分配内容,比如说让一个对象负责组件的观感,另一个对象负责存储内容。

当程序员想要使用Swing组件来完成开发时,不需要考虑MVC体系结构。每个用户界面的元素都有一个包装器的类来保存模型和视图。当需要查询所需要的内容时,包装器类会向模型询问并且返回所要的内容。当想要改变视图时(例如,在一个文本域中改变光标位置的时候),包装类会把此请求转发给视图。然而,有时候包装器转发命令并不得力。在这种情况下,就必须直接地与模型进行交互。

2.5.3 Swing带给我们什么

MVC模式吸引广大Swing设计者原因是这种模式允许实现可插观感。每个按钮或者文本域的模型是独立于观感的。当然可视化表明完全依赖于特殊观感的用户界面的设计,并且控制器可以改变它。比如,在一个语音控制设备中,控制其需要处理的各种事件与使用键盘和鼠标的标准计算机完全不同。Swing设计者通分离底层模型与用户界面,这样能够重用模型的代码,更甚于在程序运行时对观感进行切换[7]。

对于绝大多数组件,模型类将实现一个以Model命名结尾的接口。比如,我们所知道的按钮就实现了ButtonModel接口。实现上述接口的类可