SpringMvc工作原理学习总结

SpringMvc工作原理学习总结SpringMvc工作原理了解SpringMvc之前先看看Mvc的工作原理1、MVC工作原理M:Model(完成业务逻辑Service/dao/entity/)V:View(完成界面渲染jsp/html)C:Controller(控制器->类似于CPU接受请求->调用M->返回V)MVC工作原理图2、SpringMvc工作原理Spring和SpringMvc的关系:SpringMVC是一个MVC的开源框架,SpringMVC是Spring的一个

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

SpringMvc工作原理

了解SpringMvc之前先看看Mvc的工作原理

1、MVC工作原理

  1. M:Model(完成业务逻辑 Service/dao/entity/)

  2. V:View(完成界面渲染 jsp/html)

  3. C:Controller(控制器->类似于CPU 接受请求->调用M->返回V)

  4. MVC工作原理图

    image-20201107103726612

    2、SpringMvc工作原理

    1. Spring和SpringMvc的关系:

      SpringMVC是一个MVC的开源框架,SpringMVC是Spring的一个后续产品,其实就是Spring在原有基础上,又提供了web应用的MVC模块,可以简单的把SpringMVC理解为是spring的一个模块(类似AOP,IOC这样的模块),网络上经常会说SpringMVC和Spring无缝集成,其实SpringMVC就是Spring的一个子模块,所以根本不需要同spring进行整合。

    2. SpringMVC中的组件:

      • 前端控制器(DispatcherServlet):接收请求,响应结果,相当于电脑的CPU。

        处理器映射器(HandlerMapping):根据URL去查找处理器

        处理器(Handler):(需要程序员去写代码处理逻辑的)

        处理器适配器(HandlerAdapter):会把处理器包装成适配器,这样就可以支持多种类型的处理器,类比笔记本的适配器(适配器模式的应用)

        视图解析器(ViewResovler):进行视图解析,多返回的字符串,进行处理,可以解析成对应的页面

    3. SpringMvc工作原理图

      SpringMvc工作原理学习总结

    4. SpringMvc工作流程

      • 第一步:用户发起请求到前端控制器(DispatcherServlet)

        第二步:前端控制器请求处理器映射器(HandlerMappering)去查找处理器(Handle):通过xml配置或者注解进行查找

        第三步:找到以后处理器映射器(HandlerMappering)像前端控制器返回执行链(HandlerExecutionChain)

        第四步:前端控制器(DispatcherServlet)调用处理器适配器(HandlerAdapter)去执行处理器(Handler)

        第五步:处理器适配器去执行Handler

        第六步:Handler执行完给处理器适配器返回ModelAndView

        第七步:处理器适配器向前端控制器返回ModelAndView

        第八步:前端控制器请求视图解析器(ViewResolver)去进行视图解析

        第九步:视图解析器像前端控制器返回View

        第十步:前端控制器对视图进行渲染

        第十一步:前端控制器向用户响应结果

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • oracle笛卡尔积「建议收藏」

    oracle笛卡尔积「建议收藏」笛卡尔积定义:多张表相乘,简单的说就是两个集合相乘的积。(列数相加,行数相乘)先建了两张表,课程表:信息表:1.内连接innerjoinon 内连接:笛卡尔积中,只显示有关联的数据,无关联不显示。select*fromlefttable左表,righttable右表where左表.主键=右表.外键;select*fromlefttable左表innerjoin右表…

    2022年7月11日
    40
  • 一文概括常用图像处理算法

    一文概括常用图像处理算法本文总结了11种常用的图像处理算法,包含了预处理算法以及检测算法,并介绍了一些常用的开发库。一、算法(预处理算法、检测算法)在采集完图像后,首先会对图像进行预处理操作。1、图像变换(空域与频域、几何变换、色度变换、尺度变换)2、图像增强3、纹理分析(取骨架、连通性)4、图像分割5、图像特征6、图像/模板匹配7、色彩分析8、图像数据编码压缩和传输9、表面缺陷目标识别算法10、图像分类(识别)11、图像复原二、现有的视觉检测软件/库三、HSV颜色识别-HSV基本颜色分量范围

    2022年5月13日
    45
  • py文件怎么打包成可执行文件_pycharm写好的程序打包

    py文件怎么打包成可执行文件_pycharm写好的程序打包步骤一:安装pyinstaller推荐使用国内豆瓣镜像源安装,否则很可能会失败。在cmd命令行中输入pipinstallpyinstaller-ihttps://pypi.douban.com/simple步骤二:在pycharm中打开:View-ToolWindows-Terminal打开到所要生成exe文件的该文件目录下,输入Terminal中输入:“pyinstaller-F-w’文件名‘.py”就可以制作出exe。-w的用处是不出现黑色控制台窗口。…

    2022年8月28日
    0
  • 用一份JAVA工程师的求职简历来说说求职简历怎么写[通俗易懂]

    用一份JAVA工程师的求职简历来说说求职简历怎么写[通俗易懂]这是一篇我比较想看到的简历指导的文章。但是我比较反对简历造假。我觉得会什么写什么把。Java就业指导  想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东西,你可以把这些内容写到你的简历中,当然更需要的是你在面试的时候向面试官展示这些专业技能。相信此文…

    2022年9月23日
    0
  • 使用spss进行系统聚类分析

    使用spss进行系统聚类分析按以下步骤进行操作1)导入数据北京 8070.40 2643.00 12128.00 2511.00 5077.90 4054.70 2629.80 1140.60天津 8679.60 2114.00 6187.30 1663.80 3991.90 2643.60 2172.20 892.20河北 4991.60 1614.40 4483.20 1351.10 2664.10 1991.30 1549.90 460.40山西 3862.80 1603.00 3633.80 951.60 2401.

    2022年10月18日
    0
  • HDFS安全模式

    HDFS安全模式

    2021年6月14日
    119

发表回复

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

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