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)
上一篇 2022年5月15日 下午1:40
下一篇 2022年5月15日 下午1:40


相关推荐

  • Pycharm 自动补全

    Pycharm 自动补全Pycharm 自动补全 小白教程一 保证 File PowerSaveMod 处于关闭状态 否则 Pycharm 一直处于节能状态 无法出现自动提示和补全功能 当其关闭时 Pycharm 会有红色标记 下划线等提示出现 二 tab 键可以实现 main 函数的补全 Alt 可以实现函数和变量的补全 三 其余的补全功能可以通过 Pycharm 提示的选项通过 Enter 选择

    2026年3月20日
    2
  • 微前端架构应用

    微前端架构应用微前端架构 优势 缺点和痛点一 什么是微前端 微前端架构 就是构建基于微服务的前端应用架构 其思想是将前端应用切分为一系列可以单独部署的松耦合的应用 然后将这些应用组装起来创建单个面向用户的应用程序 微前端的实现各不相同 因为不同的公司的技术方案不同 从服务器端页面嵌入到 iframes 到 Javascript 元框架 meta frameworks 和 webcomponent 二 微

    2026年3月17日
    2
  • inputstream输出到文件_input type file

    inputstream输出到文件_input type filepackagehtc;/*————FoolishDoger——————2017-9-28————–*/importjava.io.BufferedInputStream;importjava.io.BufferedReader;importjava.io.File;importjava.io.FileInp

    2026年4月13日
    9
  • 使用panel1,切换页面

    使用panel1,切换页面定义变量UserControl1urs1_Control;UserControl2urs2_Control;UserControl3urs3_Control;UserControl4u

    2022年7月3日
    27
  • centos7 输入 ifconfig 不显示 ip 地址 连接不上的解决方法(亲测成功)「建议收藏」

    centos7 输入 ifconfig 不显示 ip 地址 连接不上的解决方法(亲测成功)「建议收藏」最近又把自己的虚拟机打开了玩玩集群,遇到一个小问题,我发现虚拟机的内存不够了,就把虚拟机关机加大了内存,谁知道开机后,ifconfig或者ipaddr显示没有ip地址,只显示一个lo,没有ens33,没有ip地址就没法用xshell连接,很蛋疼,网上也有很多解决方案,但都写的乱七八糟的,而且很多都不好使,今天就来介绍一下我最后解决的方法.我说一下我的虚拟机的情况,我三台虚拟机,之前是mas………

    2025年8月8日
    8
  • java–ACMer入门指南

    java–ACMer入门指南

    2021年9月29日
    43

发表回复

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

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