MVC模式介绍:

MVC即模型Model、视图View、控制器Controller,用一种将业务逻辑、数据、视图分离的方式组织架构代码,通过分离关注点的方式来支持改进应用组织方式,其促成了业务数据Model从用户界面View中分离出来,还有第三个组成部分Controller负责管理传统意义上的业务逻辑和用户输入,通常将MVC模式看作架构型设计模式。

M: model(模型层), Dao, Service, pojo,util这些都是模型

V: view(视图层): jsp,html....

C: Controller(控制层): Servlet, Controller...

体现的分层概念: V -->C -->M Servlet --> Service-->Dao

  1. 只能是上层调用下层 Dao -->Service 错误

  2. 不能跨层调用 Servlet -->Dao 错误

  3. 每一层使用的技术的核心类,不能出现在其他层

Service层方法: login(HttpServletRequest request, ....) 错误

java在这个MVC模式上. 提出java经典三层模型:

Web层:

Service层:

Dao层:

大型项目分层:

  1. 先按功能模块分层:

    用户模块, 订单模块, 商品模块,物流模块...

  2. 每个模块包含java经典三层模型

用户模块: 订单模块:

​ |-- web |-- web

​ |--service |--service

​ |--dao |--dao

​ |--pojo |--pojo

​ |--util |--util

MVC所起的作用:

在前端组件式架构开发,常常将视图、数据、业务逻辑等写在一个模块内,如果组件的内容比较多,容易造成层次的混乱,增加开发与维护的成本,而使用MVC模式可以将数据层、视图层、控制器层进行分层组织,用以减少耦合。

mvc工作原理:

Model(模型):一个或多个JavaBean对象,用于存储数据。JavaBean主要提供简单的setXXX方法和getXXX方法,在这些方法当中不涉及对数据的具体处理细节,以便增强模式的通用性

View(视图):一个或多个JSP页面。其作用是向控制器提交必要的数据和显示数据。JSP页面可以使用HTML标记Javabean标记以及Java程序片或者Java表达式来显示数据。视图的主要工作就是显示数据,对数据的逻辑操作由控制器负责。

Controller(控制器):一个或者多个Servlet。控制器负责视图和模型之间的交互,控制对用户输入的响应、响应方式和流程;它主要负责两方面的动作,一是把用户的请求分发到相应的模型,二是把模型的改变及时地反映到视图上。

根据视图提交的要求进行数据处理操作,并将有关的结果存储到JavaBean中,然后servlet使用转发或者重定向的方式请求视图中的某个JSP页面显示数据。

MVC设计模式及其工作原理相关推荐

  1. SpringMVC→简介、MVC、SpringMVC工作原理、Maven搭建第一个SpringMVC、请求参数接收、重定向、文件上传、AJAX异步访问、请求参数接收绑定JSON、@注解及传参

    MVC SpringMVC工作原理 Maven搭建第一个SpringMVC 目录结构 web.xml *-servlet.xml Controller请求处理类 跳转页面 Maven运行服务器项目 浏 ...

  2. MVC框架基本工作原理

    MVC工作原理 MVC要实现的目标是将软件用户界面和业务逻辑分离以使代码可扩展性.可复用性.可维护性.灵活性加强. Model 模型层,一般对数据的处理,业务逻辑都会放在model进行处理 View ...

  3. JSP程序设计实训(十二)——MVC设计模式

    MVC 设计模式 MVC(Model-View-Controller)把一个应用的输入.处理.输出流程按照 Model.View.Controller 的方式进行分离,这样一个应用被分成三层:模型层. ...

  4. java mcv_spring框架mcv的工作原理是什么?

    Spring目前是java中最流行的框架之一,它可以整合如MVC等各种框架来方便开发,今天我们就来说说spring中MVC框架的工作原理都有哪些吧. 一.springMVC工作原理 这里我们通过一个简 ...

  5. MVC详解:mvc是什么?为什么要用MVC?MVC工作原理以及MVC优缺点

    一.什么是MVC Model:模型层 View:视图层 Controller:控制层 MVC (Modal View Controler)本来是存在于Desktop程序中的,M是指数据模型,V是指用户 ...

  6. MVC详解:什么是MVC,MVC工作原理,MVC优缺点以及为什么要使用MVC

    一.什么是MVC Model:模型层 View:视图层 Controller:控制层 MVC (Modal View Controler)本来是存在于Desktop程序中的,M是指数据模型,V是指用户 ...

  7. Tomcat 系统架构与设计模式,第 1 部分: 工作原理

    Tomcat 系统架构与设计模式,第 1 部分: 工作原理 这个分为两个部分的系列文章将研究 Apache Tomcat 的系统架构以及其运用的很多经典设计模式.本文是第 1 部分,将主要从 Tomc ...

  8. 阿里P7工作总结:Spring MVC的工作原理,看完受益匪浅

    这篇文章将深入探讨Spring框架的一部分--Spring Web MVC的强大功能及其内部工作原理. 项目安装 在本文中,我们将使用最新.最好的Spring Framework 5.我们将重点介绍S ...

  9. 【Tomcat】Tomcat 系统架构与设计模式,第 1 部分: 工作原理

    这个分为两个部分的系列文章将研究 Apache Tomcat 的系统架构以及其运用的很多经典设计模式.本文是第 1 部分,将主要从 Tomcat 如何分发请求.如何处理多用户同时请求,还有它的多级容器 ...

最新文章

  1. 让就医流程更智能 道一循推医院官方APP
  2. AUTOSAR从入门到精通100讲(五)-汽车LIN总线详解
  3. 操作系统【八】文件管理
  4. C 标准IO 库函数与Unbuffered IO函数
  5. python中闭包详解
  6. 【PAT乙】1069 微博转发抽奖 (20分) set
  7. 每天一个linux命令(13):tail 命令
  8. tf SavedModel 保存模型的新方式
  9. 互联网日报 | 3月27日 星期六 | 知乎正式登陆纽交所;美团2020年营收首破千亿元;小米将推出新款自研芯片...
  10. 安卓测试皮肤的软件有哪些,什么软件可以测肤色 有哪些检测皮肤的app好用为什么...
  11. 2018年中考计算机考试成绩,2018年北京中考考试科目、时间及成绩公布通知
  12. java 葫芦娃.rmvb,课内资源 - 基于JAVA的葫芦娃 — 最终之战
  13. linux 查看策略路由,Linux下的策略路由。
  14. 2021-07-02软件构造学习中遇到的问题
  15. ESP32基于arduino开发的心跳体温检测系统(一)项目介绍及准备
  16. 科技云报道:2022Arm服务器现状:云阵营已成
  17. Windows下Python新手安装教程
  18. Ubuntu中实现中英文切换
  19. java 四分位距算法和标准差
  20. 1046: 奇数的乘积 Python

热门文章

  1. 威纶通触摸屏与2台台达温控器modbus rtu 通讯程序。 用的威纶通在线模拟,真实触摸屏只需修改com口
  2. Arduino应用——PWM控制直流电机风扇
  3. exit和_exit函数
  4. IBMMQ linux版安装(五)
  5. 华为云桌面解读-流畅的原理
  6. 主题 06:如何高效地排查 Java 系统异常
  7. python怎么判断中文_python 判断是否为中文
  8. python 方差膨胀因子 检验_从零开始学Python【22】--线性回归诊断(第一部分)
  9. 数据采集的数据源有哪些?
  10. Matlab unravel函数,有没有更好的方法在python中执行“unravel”函数?