MVC和三层架构

前一阵,根据工作需要,带了几个刚入职的学员,其实这些学员中有比我都接触代码时间长的,当然也会说出很多我不了解的知识或者名词,此种MVC、三层架构就是经常提起的,但是我对于这个的了解不是很深入,今天正好上网了解,就和大家分享一下。

MVC和三层架构 1.是不是一回事?2.有什么区别?3.如何解释这个问题?

MVC阐述:

        MVC (Model View Controler)本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。MVC是一种软件设计模式。

         MVC与J2EE架构的对应关系是:View处于Web Tier或者说Client Tier,通常是JSP/Servlet,即页面显示部分。Controller也处于Web Tier,通常用Servlet来实现,即页面显示的逻辑部分实现。Model处于Middle Tier,通常用服务端javaBean或者EJB实现,即业务逻辑部分的实现。

         MVC关键在于构建Model,Model就是MVC模式的灵魂,它包含了三层架构里的“实体层”,“数据访问层”“业务逻辑层”。Controller用来收集View提供的用户数据,传递给Model,同时返回Model处理后的数据给View。

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

         三层架构是最基本的项目分层结果,而MVC则是三层架构的一个变体,MVC是一种好的开发模式。首先要明白MVC分别代表的是什么意思.
                 M 即Model(模型层),主要负责出来业务逻辑以及数据库的交互
                 V 即View(视图层),主要用于显示数据和提交数据
                 C 即Controller(控制器),主要是用作捕获请求并控制请求转发
三层阐述:       

         三层架构通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。


         三层:UI 界面层 BLL 业务逻辑层,DAL数据访问层,Model 实体层

区别:
         MVC中的的M 不是三层中的Model(实体层),他其实包括三层中的 BLL,DAL,Model,这是非常要注意的,这也是他们之间的区别的关键所在

相同点:          

        他们相同的设计理念就是:把视图设计与数据持久化进行分离,从而降低耦合性,易于扩展,提高团队开发效率。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值