springMVC执行流程及原理

springMVC执行流程及原理spring的MVC执行原理1.springmvc将所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作。2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller.3.DispatcherServlet请请求提交到目标Controller4.Controller进行

大家好,又见面了,我是你们的朋友全栈君。

spring的MVC执行原理

1.spring mvc将所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求 进行真正的处理工作。 2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller. 3.DispatcherServlet请请求提交到目标Controller 4.Controller进行业务逻辑处理后,会返回一个ModelAndView 5.Dispathcher查询一个或多个ViewResolver视图解析器,找到ModelAndView对象指定的视图对象 6.视图对象负责渲染返回给客户端

优点:

1.使用Spring的IOC容器,将对象之间的依赖关系交给Spring,降低组件之间的耦合性,让我们更专注于应用逻辑

2.可以提供众多服务,事务管理,WS等。

3.AOP的很好支持,方便面向切面编程。

4.对主流的框架提供了很好的集成支持,如Hibernate,Struts2,JPA等

5.Spring DI机制降低了业务对象替换的复杂性。

6.Spring属于低侵入,代码污染极低。

7.Spring的高度可开放性,并不强制依赖于Spring,开发者可以自由选择Spring部分或全部

SpringMVC执行流程

springMVC执行流程及原理

  1. 用户发起请求到前端控制器(Controller)
  2. 前端控制器没有处理业务逻辑的能力,需要找到具体的模型对象处理(Handler),到处理器映射器(HandlerMapping)中查找Handler对象(Model)。
  3. HandlerMapping返回执行链,包含了2部分内容: ① Handler对象、② 拦截器数组
  4. 前端处理器通过处理器适配器包装后执行Handler对象。
  5. 处理业务逻辑。
  6. Handler处理完业务逻辑,返回ModelAndView对象,其中view是视图名称,不是真正的视图对象。
  7. 将ModelAndView返回给前端控制器。
  8. 视图解析器(ViewResolver)返回真正的视图对象(View)。
  9. (此时前端控制器中既有视图又有Model对象数据)前端控制器根据模型数据和视图对象,进行视图渲染。
  10. 返回渲染后的视图(html/json/xml)返回。
  11. 给用户产生响应。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154079.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月28日 上午10:00
下一篇 2022年6月28日 上午10:00


相关推荐

  • 常见面试题(AJAX篇)

    常见面试题(AJAX篇)1 说说 Jsonp 的原理 jsonp 是用来解决什么问题的 为什么会有这个问题 Jsonp 有什么缺点 重要 2 get 和 post 有什么区别 3 你们公司是怎么解决跨域这个问题 重要 4 你是怎么理解 ajax 的 Ajax 的原理能说一下吗 5 你对同步和异步是怎么理解的 6 页面传参有没有出现过乱码的情况 如果有你是怎么解决的 7 在前后端数据交互的时候 有处理过

    2026年3月27日
    2
  • Lua基本教程

    Lua基本教程Linux 系统上安装 curl R Ohttp www lua org ftp lua 5 3 0 tar gztarzxflua 5 3 0 tar gzcdlua 5 3 0makelinuxte 系统上安装 LuaGithub 下载地址 https github com rjpcomputing luaforwindow releases8 种数据类型 number 只有双精度

    2026年3月26日
    2
  • 微信小程序授权登录页面(有提示窗)

    微信小程序授权登录页面(有提示窗)微信小程序授权登录 有弹窗提示 效果显示 授权登录页面授权登录提示弹窗拒绝授权登录允许登录后 跳转到小程序首页代码 wxml 文件 viewclass header imagesrc userInfo avatarUrl 用户头像 view view imagesrc userInfo avatarUrl viewclass header

    2026年3月17日
    4
  • idea 激活码2021 3月最新注册码

    idea 激活码2021 3月最新注册码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    53
  • linux上 mysql数据库备份与还原 (mysqldump)

    linux上 mysql数据库备份与还原 (mysqldump)最近要写mysql数据库备份,把自己所得记录下来,防止以后忘了,哈哈哈哈(注 这是远程备份,备份到指定服务器)使用环境   centos7   mysql5.7    远程连接主机免密码登录,   在运行服务器上执行  ssh-keygen   一路回车,还是不要添加密码的好,这时候可以注意一下公钥,秘钥保存位置  把公钥放到备份的服务器上 ssh-…

    2022年6月9日
    53
  • Microsoft visio 2013 professional激活成功教程软件

    Microsoft visio 2013 professional激活成功教程软件特别说明:软件仅供技术交流,请勿用于商业及非法用途,如产生法律纠纷与本人无关Microsoftvisio2013professional激活成功教程软件下载地址:链接:https://pan.baidu.com/s/1ycZHBzzF2KtGOwAs1LbHMQ密码:npkl激活成功教程步骤:文件—>账号—>更改产品密钥—>输入如下序列号即可。序列号:…

    2022年6月24日
    52

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号