什么是mvc模式

2018-07-16 02:39:12来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

 

MVC是一个架构,或者说是一个设计模式,它就是强制性使应用程序的输入,处理和输出分开。将一个应用程序分为三个部分:Model,View,Controller。

原理图:

分析:

Model 模型(完成业务逻辑:由javaBean构成,在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和javabean这样的构件对象来处理数据库。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。)

View 视图(就是负责跟用户交互的界面。一般就是由HTML,css元素组成的界面,当然现在还有一些像js,ajax,flex一些也都属于视图层。 在视图层里没有真正的处理发生,之负责数据输出,并允许用户操纵的方式。MVC能为应用程序处理很多不同的视图。 )

Controller 控制器(接收请求—>调用模型—>根据结果派发页面并经过模型处理返回相应数据 )

 

--------------------------------------------------------------------------

优点:
1、分工明确(开发人员可以只关注整个结构中的其中某一层):使用MVC可以把数据库开发,程序业务逻辑开发,页面开发分开,每一层都具有相同的特征,方便以后的代码维护。

                            它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现形式上。
2、松耦合(可以降低层与层之间的依赖):视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。

                    因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。 
3、复用性高(利于各层逻辑的复用):像多个视图能够共享一个模型,不论你视图层是用flash界面或是wap界面,用一个模型就能处理他们。将数据和业务规则从表示层分开,就可以最大化从用代码

3、有利于标准化(有利于通过工程化、工具化产生管理程序代码);

 

概括来说,分层式设计可以达至如下目的:分散关注、松散耦合、逻辑复用、标准定义。

 

缺点:
分层式结构也不可避免具有一些缺陷:

1、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。
2、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。

3、由于它没有明确的定义,所以完全理解MVC并不是很容易。使用MVC需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去思考。

4、MVC并不适合小型甚至中等规模的应用程序,花费大量时间将MVC应用到规模并不是很大的应用程序通常会得不偿失。 

*如何改善:

第一个缺点,可以采用一些设计模式来到改善。

第二个缺点,可以通过系统的缓存机制来减小对性能的影响;

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java:Servlet

下一篇:Java反射获取方法和属性