博主资料

留言 加为好友 收藏

用户名:  tengfei007
来自:  吉林 长春
年龄:  24

个人统计

用户名: tengfei007
等级: 初来乍到
威望: 60
积分: 161
在线时间: 2 小时
日志总数: 16
评论数量: 27
访问次数: 57955
建立时间: 2007-01-18
RSS订阅       手机访问

文章搜索

友情链接

最近访问的人:

linugb118
2007-12-19 15:07:46
吴旅游|木风淋语
2007-12-07 08:53:50
灵动
2007-09-05 13:32:13
赛迪博客客服
2007-09-04 02:36:08
蓝田紫菜
2007-08-10 08:48:09
计算机-程序-JAVA..
2007-08-10 03:21:12
张宝林
2007-08-09 05:13:13
学问天地
2007-07-10 14:45:05

日志文章

2007年05月10日 10:33:22

浅谈MVC设计思想

  MVC模式是"Model-View-Controller"的缩写,中文翻译为"模型-视图-控制器"。MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖于该Models的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己。(这个潜在的Model就是在View改变后由Controller分发的)。
  使用Jsp + javabean + servlet 进行MVC模式的设计,页面处理(View)由jsp完成,对象封装和具体的业务由javabean来完成,而servlet则完成控制层的功能。
  用户在jsp页面触发一个事件,提交给接受触发的servlet,然后由servlet选择适合的实体bean对jsp页面传递的所有参数进行封装,然后调用具体的业务处理类响应用户的需求,同时业务处理类从刚才封装好的实体bean中获取需要的参数,业务完成后将信息返回给servlet,servlet根据返回的信息再选择合适的视图(即该模式下的Jsp页面)把结果反馈给用户。
另外,需要理解的是“视图是模型的表示”。
  MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。
  视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。
  模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。一个好的Model可以大幅度提高效率。
业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据 保存(持续化)。
  控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制。

Tags: 模式  

类别: 无分类 |  评论(1) |  浏览(2325) |  收藏
一共有 1 条评论
1楼 澄清 2007年05月10日 14:07:42 Says:
ding!!!!
发表评论