mvc模式里,视图可以直接调用模型里的方法吗,还是调用控制器的方法,由控制器调用模型里的方法

来源:百度知道 编辑:UC知道 时间:2024/06/06 14:23:21
mvc模式里
视图可以直接调用模型里的方法吗
还是视图调用控制器的方法,再由控制器调用模型里的方法

不建议这么做,标准的流程是:视图把请求发送给控制器,由控制器转发给模型。但是,有的时候稍微灵活一些,也未尝不可。

要符合MVC的设计理念,就不允许视图层(V)调用模型层(M)的方法,V主动的向控制层(C)发送数据,而C则是被动的调用request对象的方法得到数据,再主动的调用M的方法来处理数据,最后主动的调用M层的方法得到处理后的数据,把其封装回request对象里,最后在V里通过request对象的方法取出处理后的数据进行显示。

正确的做法都是视图调用控制器的方法,再由控制器调用模型里的方法.

1.视图层V用来接收表单数据和显示表单数据的.
2.控制层C只是用来转发页面的.
3.模型层M的范围很广,通常包括业务逻辑层(biz),数据访问层(dao)和实体类(bean),biz用来处理业务需求的,dao用来访问数据库的.bean用来保存数据,(一个bean映射一个数据库的表).

这3者的关系是 :

Veiw层的表单数据提交到相应的Control层,Control层获取提交上来的数据再去调用Model层(biz),biz里通常把Control层传来的数据进行封装成一个bean对象,再去调用数据访问层dao.(dao里一般只写5个方法,即insert,delete,update,select,selectAll),通过调用这些方法在Control层里获取返回的值,根据返回值从而进行判断是要转发到哪个页面.

视图不调用任何东西的方法,视图的用处就是为了显示数据。。用控制器来调用模型的方法。。然后模型让视图来显示数据。。

拉拉拉练大