J2EE的的MVC体系结构及其设计模式(一)体系结构及其设计模式(一)
目前大多数企业采用J2EE技术的结构设计与解决方案。对于我们学习和研究J2EE体系结构来说,了解与
掌握J2EE体系结构的设计方法及一些常用模式是必须的;模型-视图-控制(model-view-control,简称MVC)
结构是目前最常见的J2EE应用所基于的体系结构,MVC主要适用于交互式的Web应用,尤其是存在大量
页面及多次客户访问及数据显示;相比较而言,一个工作流体系结构更多应用于过程控制和较少交互的情
况下;除了体系结构外,J2EE的设计模式对我们解决应用系统的设计也有很大的帮助。
一、一、J2EE的模型的模型-视图视图-控制(控制(MVC)体系结构)体系结构
模型-视图-控制结构是交互式应用程序广泛使用的一种体系结构。它有效地在存储和展示数据的对象中区
分功能模块以降低它们之间的连接度,这种体系结构将传统的输入、处理和输入模型转化为图形显示的用
户交互模型,或者换一种说法,是多层次的Web商业应用;MVC体系结构具有三个层面:模型
(Model)、视图(View)和控制(Controller),每个层面有其各自的功能作用,MVC体系结构如下:
图1 MVC 体系结构
模型层负责表达和访问商业数据,执行商业逻辑和操作。也就是说,这一层就是现实生活中功能的软件
模拟;在模型层变化的时候,它将通知视图层并提供后者访问自身状态的能力,同时控制层也可以访问其
功能函数以完成相关的任务。
视图层负责显示模型层的内容。它从模型层取得数据并指定这些数据如何被显示出来。在模型层变化的
时候,它将自动更新。另外视图层也会将用户的输入传送给控制器。
控制层负责定义应用程序的行为。它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以
解释用户的输入并将它们映射为模型层可执行的操作;在一个图形界面中,常见的用户输入包括点击按钮
和菜单选择。在Web应用中,它包括对Web层的HTTP GET和POST的请求;控制层可以基于用户的交互
和模型层的操作结果来选择下一个可以显示的视图,一个应用程序通常会基于一组相关功能设定一个控制
层的模块,甚至一些应用程序会根据不同的用户类型具有不同的控制层设定,这主要是由于不同用户的视
图交互和选择也是不同的。
在模型层、视图层和控制层之间划分责任可以减少代码的重复度,并使应用程序维护起来更简单。同时
由于数据和商务逻辑的分开,在新的数据源加入和数据显示变化的时候,数据处理也会变得更简单。
二、二、J2EE设计模式设计模式
一个设计模式描述了对于特定设计问题被验证的解决方案,它综合了所有开发者对这个问题所在领域的
知识和见解;同时也是对于常见问题的可重用方案,它们一般适用于单个问题,但是组织在一起就可以提
供整个企业系统的解决方案。下面我们列举八种常用于J2EE平台的设计模式,并对每种模式作简单的介
绍,便于大家学习、理解与灵活应用。
1、前控制器、前控制器