JavaWEB开发中三层架构与MVC的解释

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39641494/article/details/78936266

     在java开发中,经常会遇到有人问这个问题,自己也经常被问到,面试的时候也会问到.原来傻傻的以为mvc就是对应与三层框架….经过后来的持续学习,发现原来是自己错了,现在就来做一总结:

JavaWeb开发的三层架构:

  • 表现层
  • 业务层
  • 持久层
    如上,才是常说的三层架构.

MVC的概念:

官方解释:MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。戳这里
     以上的说法太正式.简单明了的说在我们经常用到的接触到的就是这样:

  • M —>model(模型数据)
  • V —>view (视图展现)
  • C —>controller(控制器)

三层架构与MVC的关系:

  • 表现层 ———–>mvc框架
  • 业务层 ———–>service层
  • 持久层 ———–>Dao层框架

细说三层架构与之对应的流行框架

  • 表现层 ———–>mvc框架———>strtus2/SpringMVC|
  • 业务层 ———–>service层                                           |  Spring容器
  • 持久层 ———–>Dao层框架——>Hibernate/Mybatis|
    Spring框架作为一个容器,利用核心功能IOC、AOP控制管理着三层架构,实现整体架构的解耦.
    也就是市面流行的strtus2/SpringMVC是表现层框架.

再细说MVC框架与strtus2/SpringMVC的对应关系

  • model模型:数据库表对应的实体类,用作前后台的数据交互。
  • view模型:视图的展现,在框架中的返回值(return “index”;)可以直接返回到指定名称的页面
  • controller模型:接收用户请求,并进行处理.可以接收页面表单数据,页面的表单数据就是以model的属性来传参.

2017年12月30日10:17:18毕

待补充,这次只有文字叙述,没有代码.后续补充代码加以佐证…

展开阅读全文

没有更多推荐了,返回首页