MVC1与MVC2得的概念与区别

基本概念:

M:Model 程序的业务

V:View 程序的界面

C:Controller 程序的控制部分

 

1.MVC1模式

 

MySpace博客图片-讲述我的故事~

view接受用户输入,并传递到controller.

controller统一进行处理命令,交由model处理具体的业务.

进过处理model更新后,通知view进行更新.

这种模式主要用于桌面程序,使用观察者模式实现,具体来说就是让View观察Model,而用户交互控制的地方用匿名类的方式统一放在controller中.

2.MVC2模式

MySpace博客图片-讲述我的故事~

view接受用户输入,并传递到controller.

controller统一进行处理命令,交由model处理具体的业务.

进过处理model更新后,controller会选一个view并把model内容传递(request,session)给它(forward).

然后view进行显示.

3.区别

可以看到,model是否能主动通知view就是二者的主要差别.桌面程序可以做到,所以使用MVC1; Web程序由于Http协议的限制做不到,所以使用MVC2.


附录:
        mvc1 模式:

view接收用户输入,把命令传到controller
controller处理命令,更新model
model被更新后,会通知view需要update
view更新后向用户显示

        mvc2 模式:

由于mvc1中,model可以通知view,然后view就可以被更新,这在windows程序中很常见,像MFC的frame-document-view架构,如果document改变了,他会主动通知view进行update

但是在web中,作为model的java bean更新后,无法调用作为view的jsp(而且view通常很多,需要选一个),因此改为mvc2模式:

view接收用户输入,把命令传到controller
controller处理命令,更新model
model被更新后,controller会选一个view并forward到这个jsp,附带把model放到request参数
这个view获得model然后显示


http://blog.myspace.cn/e/403523913.htm


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值