`
senton
  • 浏览: 200551 次
  • 性别: Icon_minigender_1
  • 来自: 紫禁城
社区版块
存档分类
最新评论

MVC模式

    博客分类:
  • Web
阅读更多

MVC模式
 所谓的MVC模式就是模型-视图-控制器(Model-View-Controller)模式,其结构图如下: 

从严格意义上来说,MVC模式实际上是结构模式,而不是设计模式.一个架构模式描述软件系统里的基本的结构组织或纲要.它提供一些事先定义好的子系统,指定它们的责任,并给出把它们组织在一起的法则和指南.一个架构模式常常被分解成多个设计模式联合来实现,很显然,MVC就是这样一种架构模式.
 MVC在J2EE中的应用:
 一般而言,一个J2EE系统应适当的划分接受请求,根据请求采取行动,并将结果显示给用户等责任,现今流行的有两种,即模型一和模型二.模型一是以jsp为中心,jsp负责与客户端通信,处理所有的请求和答复,数据库的存取直接由jsp完成,有时又加入一些JavaBean辅助完成.很显然,业务逻辑和显示数据都混合在jsp里面,使得两者无法独立演化,这样系统变得难以维护和扩展,所谓的"开-闭原则"在这就很难体现.这就是模型一的缺点.
 模型二就是以Servlet为中心的设计模型.它将业务逻辑和显示数据分割开来,从而使得系统的层次更加清楚.其架构图如下所示:

1.Servlet相当于控制器角色,它负责接受客户端请求并处理此请求;
2.根据请求的类型,Servlet可以选择创建一个JavaBean对象,并从请求的处理过  程中取得的结果作为初始化参数传给JavaBean对象.
3.Servlet也可以直接存取数据库中的数据.
4.Servlet将请求传递给合适的JSP.而JSP则显示给用户.
5.JSP仅仅从JavaBean中读取数据,JavaBean直接与数据库打交道,JSP不与数据库 打交道.
6.JSP将数据返回给客户端.
 可以看出,模型二中Servlet不参与显示数据的工作,它仅仅负责接受请求和产生中间数据,而JSP则专门负责显示数据,这样就使得系统变得容易维护和扩展.

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics