Spring Mvc工作原理图解
先来一张图:
目前还是有些疑惑,因为是初学

思考了大半天,整理了初步的一些工作原理:
如图上所述:
1、用户(打开网站,输入网址url)发送请求。
2、用户的请求会通过前端(核心)控制器(DispatcherServlet),处理对应的请求。
3、进入页面处理器,经过映射器(HandlerMapping)、适配器(HandlerAdapter),找到合适的控制器。(寻找处理请求的控制器)
4、调用业务层的代码(sevice处理,经过一系列调用数据访问层的代码),返回Model数据。(调用业务层的代码)
5、回来再经过页面控制器,由视图解析器,决定调用哪一个视图,返回给前端控制器一个视图和模型(ModelAndView)。(这个过程就是一个视图逻辑路径的拼接)
6、前端控制器会对页面进行渲染,给用户响应。(这个过程就是一个页面、数据的整合)
至此,一个请求响应就完成了。

前端控制器(DispacherServlet):负责转发请求,接受用户的请求,申请处理后,将响应返回给客户

处理器映射器(HandlerMapping):前端控制器把请求转发给处理器映射器。处理器映射器根据请求中的URL,找到对应的Handler(相当于struts2的Action),返回给前端控制器。

处理器适配器(HandlerAdapter):前端控制器知道要执行哪个Handler,但是它只是把信息转发给处理器适配器,处理器适配器调用程序写好的Handler,Handler执行完,返回一个ModelAndView对象给适配器,处理器适配器再把这个对象返回给前端控制器

处理器(Handler):编写handler按照适配器的规则来编写,比如实现哪个接口,这样适配器才可以正确执行handler

视图解析器(View resolver):前端控制器会把逻辑视图发送给视图解析器请求解析,视图解析器处理后返图物理视图(view)给前端控制器

视图view:前端控制器请求进行视图渲染,把model数据填充到request域,返回视图(jsp、html等)
看的别人博文,找到了一些Spring Mvc中一些重要角色的作用,下面是链接

原文:https://blog.csdn.net/wangdongli_1993/article/details/82011032

还是一些底层的工作原理不清粗。希望交流一下

Spring Mvc工作原理图解相关推荐

  1. Spring MVC工作原理

    转载自  Spring MVC工作原理 Spring MVC框架介绍 Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面. Spring M ...

  2. Spring MVC工作原理 及注解说明

    转载自  http://blog.csdn.net/shuyeshangdemayi/article/details/50259493 SpringMVC框架介绍 1) Spring MVC属于Spr ...

  3. 详细述说spring mvc工作原理

    spring mvc是什么? springMVC是一个MVC的开源框架,springMVC=struts2+spring,springMVC就相当于是Struts2加上sring的整合,但是这里有一个 ...

  4. spring mvc工作原理及组件说明

    组件说明 以下组件通常使用框架提供实现: DispatcherServlet:前端控制器 用户请求到达前端控制器,它就相当于mvc模式中的c,dispatcherServlet是整个流程控制的中心,由 ...

  5. spring MVC 工作原理

    2019独角兽企业重金招聘Python工程师标准>>> 1.客户端发出一个http请求给web服务器,web服务器对http请求进行解析,如果匹配DispatcherServlet的 ...

  6. Spring的工作原理(一)简介

    Spring的工作原理 有时候面试的时候,面试官:会用Spring么?答:会,我们公司就用的Spring.面试官:Spring怎么进行控制反转的?切面怎么实现的?切面回用于哪一些场景?用到了哪一些设计 ...

  7. spring Mvc 执行原理 及 xml注解配置说明 (六)

    Spring MVC 执行原理 在 Spring Mvc 访问过程里,每个请求都首先经过 许多的过滤器,经 DispatcherServlet 处理; 一个Spring MVC工程里,可以配置多个的 ...

  8. 春天到了,讲讲Spring的工作原理

    一.春天到了,讲讲Spring的工作原理 在致力于优质IT知识出版分享的异步社区,有这么一本书--两版累计销售了近10w本,它可是完完全全靠着自己过硬的内容实力打出的这片天! 第二版已出版4年,基于S ...

  9. spring的工作原理介绍

    作为一名Java Coder,无时无刻都在用Spring这个框架,可我们对他的了解有多少呢.下面我自己整理了一些思路,有问题还请大佬多多指教. Spring的工作原理就是让一个对象的创建不用new就可 ...

最新文章

  1. OSPF高级设置实现全网互通
  2. Android Bluetooth hci 命令分析
  3. C语言与汇编语言相互调用原理以及实例
  4. 开发app用户协议_兰州移动APP开发用户体验设计不应该做的事
  5. 1.1 JAVA集合
  6. android view 镜像,Android 实现镜像效果
  7. Linux基础(firewalld防火墙配置管理工具的图形用户界面)
  8. 【转】几个超炫的专业词汇
  9. [见得多了就懂了]食物链
  10. 线上IIS应用程序池自动关闭
  11. 小红伞的WAF一个绕过方法
  12. ipad wifi信号测试软件,iPad3的wifi信号弱 二种方法修复WiFi信号
  13. 小技巧|Cadence安装之后,原理图DSN文件的默认图标不对如何进行修改
  14. 再读《终身成长》——重塑思维
  15. 如何在软件开发行业选择一条正确的职业道路?
  16. h5画三角形_H5如何在网页中绘制三角形,值得一看
  17. ubuntu下没有中文输入法的解决办法!
  18. bert获得词向量_Bert输入输出是什么
  19. 一篇文章理解外汇知识
  20. k8s对接smb/cifs存储

热门文章

  1. 下载chromium源码gclient代理设置 git代理设置
  2. Hibernate配置Oracle
  3. jira使用教程pdf_《jira项目管理系统使用指南》.pdf
  4. 三国揭秘 诸葛亮为何重用张飞疏远关羽
  5. 关于陌陌签名验证机制的研究
  6. 倪文迪陪你学蓝桥杯2021寒假每日一题:1.15日(2018省赛A组第3题)
  7. docker-compose是干什么的?
  8. Away 3d 入门demo
  9. linux网络及防火墙配置命令
  10. pinia与vuex的区别以及pinia的使用