Struts(一)struts2.2概述与MVC模式深度剖析

struts2.2概述与MVC模式深度剖析

 

1.Struts2是由webwork与struts一起组成的。struts1与struts2完全不一样。(处理前段到服务器端的交互,也就是web端)

 

2.通过基于请求响应( Request-Response)模式的应用Framework, 基本上有如下几个表现逻辑结构组成。
控制器Controller——控制整个Framework中各个组件的协调工作。
业务逻辑层Business Logic——Framework身来说, 这里仅仅只是概念和几个提够服务的基础组件,

 真正的实现与客户的业务逻辑接轨, 还需要开发人员在Framework上再次扩展

数据逻辑层Data Logic——绝大多数应用系统都需要涉及到数据交互,这一层次主要包括了数据逻辑

 

3.Struts有其自己的控制器( Controller, 同时整合了其他的一些技术去实现模型层( Model) 和视图层( View) 。 在模型层, Struts可以很容易的与数据访问技术相结合, 包括EJB,JDBC等。 在视图层,Struts能够与JSP表示层组件相结合。

 

4.Struts的概念和体系结构

Struts有一组相互协作的类、 Servlet以及Jsp TagLib成。基于Struts构架的web应用程序基本上符合JSPModel2的设计标准,可以说是MVC设计模式的一种变化类型。根据上面对framework的描述,我们很容易理解为什么说Struts是一个web framework,而不仅仅是一些标记库的组合。

 

5.MVCModel-View-Controller的简称, 即模-视图-控制器。
MVC是一种设计模式, 它把应用程序分成三个核心模块:模型、 视图、 控制器, 它们各自处理自己的任务。

MVC结构图

 

MVC的处理过程

首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理。
然后模型根据用户请求进行相应的业务逻辑处理,并返回数据。
最后控制器调用相应的视图格式化模型返回的数据,并通过视图呈现给用户。

 

MVC的优点

首先,最重要的一点是多个视图能共享一个模型。同一个模型可以被不同的视图重用,大大提高了代码的可重用性
由于MVC的三个模块相互独立,改变其中一个不会影响其他两个,所以依据这种设计思想能构造良好的松耦合的构件。
此外,控制器提高了应用程序的灵活性和可配置性。控制器可以用来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。

 

MVC的适用范围

使用MVC需要精心的计划,由于它的内部原理比较复杂,所以你需要花费一些时间去理解它。将MVC运用到你的应用程序,会带来额外的工作量,增加应用的复杂性。
但对于开发存在大量用户界面,并且业务逻辑复杂的大型应用程序, MVC将会使你的软件在健壮性、代码重用和结构方面上一个新的台阶。尽管在最初构建MVC框架时会花费一定的工作量,但从长远角度看,它会大大提高后期软件开发的效率。

 

JSP的模型2

JSP负责生成动态网页
Servlet负责流程控制
JavaBean负责业务逻辑

 

 

posted on 2015-10-29 19:34  彩屏黑白  阅读(481)  评论(0编辑  收藏  举报

导航