SpringMVC 工作原理
SpringMVC 工作原理
- 一、工作原理
- 二、处理器/组件 的作用
一、工作原理
Spring的MVC框架主要由DispatcherServlet、映射处理器、处理器(控制器)、视图解析器、视图组成。
简单描述:
- 客户端请求提交到DispatcherServlet
- 由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理请求的Controller
- DispatcherServlet将请求提交到Controller
- Controller调用业务逻辑处理后,返回ModelAndView
- DispatcherServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView指定的视图,并将结果显示到客户
详细过程:
- 用户发送请求至前端控制器DispatcherServlet;
- DispatcherServlet调用处理器映射器HandlerMappering;
- 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet;
- DispatcherServlet调用处理器适配器HandlerAdapter。
- 处理器适配器经过适配调用具体的处理器(Controller,也叫后端控制器);
- Controller执行完成返回ModelAndView;
- 处理器适配器将controller执行结果ModelAndView返回给DispatcherServlet;
- DispatcherServlet将ModelAndView传给视图解析器ViewReslover;
- 视图解析器解析后返回具体View;
- DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中),并响应给用户。
二、处理器/组件 的作用
前端控制器DispatcherServlet(也叫中央处理器):作为前端控制器,整个流程控制的中心,控制其它组件执行,统一调度,降低组件之间的耦合性,提高每个组件的扩展性。
处理器映射器HandlerMappering:通过扩展处理器映射器实现不同的映射方式,例如:配置文件方式,实现接口方式,注解方式等。
处理器适配器HandlerAdapter:通过扩展处理器适配器,支持更多类型的处理器。
视图解析器ViewReslover:通过扩展视图解析器,支持更多类型的视图解析,例如:jsp、freemarker、pdf、excel等。
如果有错误的地方欢迎指出~
SpringMVC 工作原理相关推荐
- SpringMVC工作原理详解
点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! 先来看一下什么是 MVC 模式 MVC 是一种设计模式. MVC 的原理图如下: SpringMV ...
- SpringMVC工作原理之一:DispatcherServlet
一.DispatcherServlet 处理流程 在整个 Spring MVC 框架中,DispatcherServlet 处于核心位置,它负责协调和组织不同组件完成请求处理并返回响应工作.在看 Di ...
- SpringMVC工作原理 1
大家好,我是IT修真院深圳分院第十一期学员,一枚正直纯洁善良的JAVA程序员. 今天给大家分享一下,修真院官网JAVA任务二的一个知识点:SpringMVC工作原理 1.背景介绍 一:背景介绍 Jav ...
- SpringMVC→简介、MVC、SpringMVC工作原理、Maven搭建第一个SpringMVC、请求参数接收、重定向、文件上传、AJAX异步访问、请求参数接收绑定JSON、@注解及传参
MVC SpringMVC工作原理 Maven搭建第一个SpringMVC 目录结构 web.xml *-servlet.xml Controller请求处理类 跳转页面 Maven运行服务器项目 浏 ...
- SpringMVC工作原理及源码解析
SpringMVC工作原理及源码解析 一:SpringMVC原理图 二:SpringMVC的主要组件 1.前端控制器DispatcherServlet: 2.处理器映射器HandlerMapping: ...
- SpringMVC工作原理 侵立删
转自:http://www.cnblogs.com/xiaoxi/ SpringMVC的工作原理图: SpringMVC原理 1.用户发送请求至前端控制器DispatcherServlet. 2. D ...
- SpringMVC工作原理
一:SpringMVC的工作原理图 二:SpringMVC流程 用户发送请求至前端控制器DispatcherServlet. DispatcherServlet收到请求调用HandlerMapping ...
- [Java] SpringMVC工作原理之四:MultipartResolver
MultipartResolver 用于处理文件上传,当收到请求时 DispatcherServlet 的 checkMultipart() 方法会调用 MultipartResolver 的 isM ...
- dispatcherservlet发送2次请求_[Java] SpringMVC工作原理之一:DispatcherServlet
一.DispatcherServlet 处理流程 在整个 Spring MVC 框架中,DispatcherServlet 处于核心位置,它负责协调和组织不同组件完成请求处理并返回响应工作.在看 Di ...
- SpringMVC工作原理的介绍
1.原理图: 2.流程文字介绍: 1.用户向服务器发送请求,请求被Spring前端控制Servlet DispatcherServlet捕获: 2.DispatcherServlet对请求UR进行解析 ...
最新文章
- 基于Python的OpenCV轮廓检测聚类
- 一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——实现篇:(八)RTP音视频传输解析层之MPA传输格式...
- FreeSwitch安装和配置记录
- ajax点击更改div,jquery ajax双击div可直接修改div中的内容
- Linux下的iwpriv(iwlist、iwconfig)的简单应用
- 【HDU - 1702 】ACboy needs your help again! (栈和队列,水题模拟)
- markdown html vue,vue项目引入markdown
- sqlserver 导出数据库表结构和数据生成脚本
- 关于Stm32定时器+ADC+DMA进行AD采样的实现
- 【Java/Android性能优 7】Android公共库——图片缓存 网络缓存 下拉及底部更多ListView 公共类...
- 以图搜图 图像匹配_百度识图:以图搜图找到相似图片原理分析
- 质数筛+埃氏筛取思想
- android o壁纸,超实用壁纸应用大合集 - 你想要的壁纸在这里统统都能找到! - Android 应用 - 【最美应用】...
- 【高级篇 / DNS】(7.0) ❀ 04. FortiGuard 动态 DNS (DDNS) ❀ FortiGate 防火墙
- 中学生应具备的良好的学习习惯
- 计算机怎么进入用户模式,Win7系统怎么进入电脑安全模式?
- 存储技术和灾备解决方案要点
- QT5串口编程——编写简单的上位机
- 暗黑2魔电西格玛攻略_魔电西格玛,暗黑2最佳继承者-1949游戏测评
- 下一代云计算模式:Docker正掀起个性化商业革命
热门文章
- excel文件修复工具_DBF Doctor下载_DBF文件修复软件官方版下载[管理工具]
- 使用WebGL和JavaScript构建地球
- 器件基础知识——电容
- 好队友--超好用的函数插件大全,再也不用为excel函数使用烦恼啦
- 计算机网络之了解计算机网络
- 计算机信息网络安全保护管理条例,中华人民共和国计算机信息系统安全保护条例...
- java 硬盘序列号_如何使用Java获取硬盘序列号?
- linux hotplug 机制,佐须之男的博客- 跟着佐大学Lede/OpenWrt开发入门培训班讲义-18 OpenWrt hotplug 机制分析...
- win10北通手柄没反应_Win10电脑使用游戏手柄提示“无法识别”如何解决
- python 单词发音-[Python]通过有道词典API获取单词发音MP3