MVC与三层架构的异同点

转载 2015年07月08日 15:50:24

者理解其中的玄机。

其实它们相同的地方在于他们都有一个表现层。 
但是他们不同的地方在于其他的两个层。 

首先先解释一下MVC。V即View.是视图的意思。C即Controler.是控制器的意思。而M即Model,是模型的意思。这三个里.最不容易理解的应该是Model.就是什么是Model,而为什么叫Model。我先不说为什么叫Model,先解释Controller。 

Controller是控制器的意思,所谓控制器,就是将用户请求转发给模型层,经过处理后把结果返回到界面展现的一个中间层,那么Controler到底管什么工作呢?先不说.先来看下在Java Web中这三个层一般的定义,一般在Java Web里,JSP充当V,Servlet充当C,JavaBean充当M,这里的 Servlet管什么工作呢?接受输入,转到Model层去处理,处理结果保存后转发到JSP,然后展现数据。所以它的功能就是控制器的基本功能,它就管转发,在V和M之间转来转去。 

再来说说M,即Model,在Java Web里说的是JavaBean,我认识的很多人都把JavaBean误认为是实体类,其实JavaBean有比实体类更丰富的定义,在JavaBean中除了其属性和字段,还可以有行为及其事件,JavaBean可以理解为普通Java对象。Java普通对象,就是符合Java规范的所有对象,这和实体类完全是两回事。所以,我认为在MVC中。业务逻辑和数据访问应该放在Model层,也就是V负责展示数据,Controler除了转发不做业务逻辑。真正的逻辑事务,数据访问,甚至算法都放到Model去。 

再说三层架构。三层其实很好理解,界面,业务,数据访问,就这三个,从字面都可以理解出它们的意思。我要说的是它和MVC的区别。在三层架构中没有定义 Controler的概念。这是我认为最不同的地方。而MVC也没有把业务的逻辑访问看成两个层,这是采用三层架构或MVC搭建程序最主要的区别。 

当然了。在三层中也提到了Model,但是三层架构中Model的概念与MVC中Model的概念是不一样的,“三层”中典型的Model层是已实体类构成的,而MVC里,则是由业务逻辑与访问数据组成的。不一样的概念。虽然名字一样。 

相关文章推荐

MVC与三层架构的异同点

同样是架构级别的,它们有什么相同点和不同点呢?这篇文章讨论一下它们的异同点。希望能帮助读者理解其中的玄机。 :) 其实它们相同的地方在于他们都有一个表现层。 但是他们不同的地方在于其他的两个层。 ...

MVC与三层架构的异同点

同样是架构级别的,它们有什么相同点和不同点呢?这篇文章讨论一下它们的异同点。希望能帮助读者理解其中的玄机。  其实它们相同的地方在于他们都有一个表现层。  但是他们不同的地方在于其...

架构(三层架构)、框架(MVC)、设计模式三者异同点

架构、框架、设计模式三者关系与异同点、三层架构与MVC的区别——chenchen

架构(三层架构)、框架(MVC)、设计模式三者异同点

本博客主要针对架构、框架和设计模式三者的区别、还有三层和MVC的区别进行讨论、对于这三者一点都不了解的、请点在维基和百度百科上补补课、这里就不发链接了软件架构  (software architect...

三层架构与MVC

什么是三层? 软件为什么要分层? 软件本身灵活性更大,使得软件更新、维护很容易进行,而不需要将整个软件重新发布方便团队分工,比如开发可分为界面设计人员、业务实现人员、数据库设计人员等等,充...

浅析MVC模式与三层架构的区别

三层架构和MVC是有明显区别的,MVC应该是展现模式(三个加起来以后才是三层架构中的UI层) 三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(...

MVC的三层架构

首先,MVC和三层架构,是不一样的。 三层架构中,DAL(数据访问层)、BLL(业务逻辑层)、WEB层各司其职,意在职责分离。 MVC是 Model-View-Controller,严格说这三个加起来...

架构师 传统三层+EF+linq+MVC+wcf+Repository+easyui+ajax+jquery+json 角色权限模块路由

终于有自己的基础项目架构框架了 很高兴的一天 。 所用技术 传统三层+EF+linq+MVC+wcf+Repository+easyui+ajax+jquery+json+js 实现功能  角色权限...
  • cao919
  • cao919
  • 2013-11-02 22:06
  • 1999

三层架构(MVC)实现简单登陆注册验证(含验证码)

前言在我的上一篇微博里我已经提出了登陆的方法,当时我采取的是纯servlet方式,因为当时刚接触到servlet,正好网上没有这方面的全面讲解,所以我就发飙了。不过在现实生产中我们大多采用的三层架构。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)