SpringMVC 工作原理

  • 一、工作原理
  • 二、处理器/组件 的作用

一、工作原理

Spring的MVC框架主要由DispatcherServlet、映射处理器、处理器(控制器)、视图解析器、视图组成。

简单描述

  1. 客户端请求提交到DispatcherServlet
  2. 由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理请求的Controller
  3. DispatcherServlet将请求提交到Controller
  4. Controller调用业务逻辑处理后,返回ModelAndView
  5. DispatcherServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView指定的视图,并将结果显示到客户

详细过程

  1. 用户发送请求至前端控制器DispatcherServlet
  2. DispatcherServlet调用处理器映射器HandlerMappering
  3. 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet;
  4. DispatcherServlet调用处理器适配器HandlerAdapter
  5. 处理器适配器经过适配调用具体的处理器(Controller,也叫后端控制器)
  6. Controller执行完成返回ModelAndView;
  7. 处理器适配器将controller执行结果ModelAndView返回给DispatcherServlet;
  8. DispatcherServlet将ModelAndView传给视图解析器ViewReslover
  9. 视图解析器解析后返回具体View;
  10. DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中),并响应给用户。

二、处理器/组件 的作用

前端控制器DispatcherServlet(也叫中央处理器):作为前端控制器,整个流程控制的中心,控制其它组件执行,统一调度,降低组件之间的耦合性,提高每个组件的扩展性。

处理器映射器HandlerMappering:通过扩展处理器映射器实现不同的映射方式,例如:配置文件方式,实现接口方式,注解方式等。

处理器适配器HandlerAdapter:通过扩展处理器适配器,支持更多类型的处理器。

视图解析器ViewReslover:通过扩展视图解析器,支持更多类型的视图解析,例如:jsp、freemarker、pdf、excel等。


如果有错误的地方欢迎指出~

SpringMVC 工作原理相关推荐

  1. SpringMVC工作原理详解

    点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! 先来看一下什么是 MVC 模式 MVC 是一种设计模式. MVC 的原理图如下: SpringMV ...

  2. SpringMVC工作原理之一:DispatcherServlet

    一.DispatcherServlet 处理流程 在整个 Spring MVC 框架中,DispatcherServlet 处于核心位置,它负责协调和组织不同组件完成请求处理并返回响应工作.在看 Di ...

  3. SpringMVC工作原理 1

    大家好,我是IT修真院深圳分院第十一期学员,一枚正直纯洁善良的JAVA程序员. 今天给大家分享一下,修真院官网JAVA任务二的一个知识点:SpringMVC工作原理 1.背景介绍 一:背景介绍 Jav ...

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

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

  5. SpringMVC工作原理及源码解析

    SpringMVC工作原理及源码解析 一:SpringMVC原理图 二:SpringMVC的主要组件 1.前端控制器DispatcherServlet: 2.处理器映射器HandlerMapping: ...

  6. SpringMVC工作原理 侵立删

    转自:http://www.cnblogs.com/xiaoxi/ SpringMVC的工作原理图: SpringMVC原理 1.用户发送请求至前端控制器DispatcherServlet. 2. D ...

  7. SpringMVC工作原理

    一:SpringMVC的工作原理图 二:SpringMVC流程 用户发送请求至前端控制器DispatcherServlet. DispatcherServlet收到请求调用HandlerMapping ...

  8. [Java] SpringMVC工作原理之四:MultipartResolver

    MultipartResolver 用于处理文件上传,当收到请求时 DispatcherServlet 的 checkMultipart() 方法会调用 MultipartResolver 的 isM ...

  9. dispatcherservlet发送2次请求_[Java] SpringMVC工作原理之一:DispatcherServlet

    一.DispatcherServlet 处理流程 在整个 Spring MVC 框架中,DispatcherServlet 处于核心位置,它负责协调和组织不同组件完成请求处理并返回响应工作.在看 Di ...

  10. SpringMVC工作原理的介绍

    1.原理图: 2.流程文字介绍: 1.用户向服务器发送请求,请求被Spring前端控制Servlet DispatcherServlet捕获: 2.DispatcherServlet对请求UR进行解析 ...

最新文章

  1. 基于Python的OpenCV轮廓检测聚类
  2. 一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——实现篇:(八)RTP音视频传输解析层之MPA传输格式...
  3. FreeSwitch安装和配置记录
  4. ajax点击更改div,jquery ajax双击div可直接修改div中的内容
  5. Linux下的iwpriv(iwlist、iwconfig)的简单应用
  6. 【HDU - 1702 】ACboy needs your help again! (栈和队列,水题模拟)
  7. markdown html vue,vue项目引入markdown
  8. sqlserver 导出数据库表结构和数据生成脚本
  9. 关于Stm32定时器+ADC+DMA进行AD采样的实现
  10. 【Java/Android性能优 7】Android公共库——图片缓存 网络缓存 下拉及底部更多ListView 公共类...
  11. 以图搜图 图像匹配_百度识图:以图搜图找到相似图片原理分析
  12. 质数筛+埃氏筛取思想
  13. android o壁纸,超实用壁纸应用大合集 - 你想要的壁纸在这里统统都能找到! - Android 应用 - 【最美应用】...
  14. 【高级篇 / DNS】(7.0) ❀ 04. FortiGuard 动态 DNS (DDNS) ❀ FortiGate 防火墙
  15. 中学生应具备的良好的学习习惯
  16. 计算机怎么进入用户模式,Win7系统怎么进入电脑安全模式?
  17. 存储技术和灾备解决方案要点
  18. QT5串口编程——编写简单的上位机
  19. 暗黑2魔电西格玛攻略_魔电西格玛,暗黑2最佳继承者-1949游戏测评
  20. 下一代云计算模式:Docker正掀起个性化商业革命

热门文章

  1. excel文件修复工具_DBF Doctor下载_DBF文件修复软件官方版下载[管理工具]
  2. 使用WebGL和JavaScript构建地球
  3. 器件基础知识——电容
  4. 好队友--超好用的函数插件大全,再也不用为excel函数使用烦恼啦
  5. 计算机网络之了解计算机网络
  6. 计算机信息网络安全保护管理条例,中华人民共和国计算机信息系统安全保护条例...
  7. java 硬盘序列号_如何使用Java获取硬盘序列号?
  8. linux hotplug 机制,佐须之男的博客- 跟着佐大学Lede/OpenWrt开发入门培训班讲义-18 OpenWrt hotplug 机制分析...
  9. win10北通手柄没反应_Win10电脑使用游戏手柄提示“无法识别”如何解决
  10. python 单词发音-[Python]通过有道词典API获取单词发音MP3