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

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

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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Java读取pkl文件_theano csv到pkl文件

    Java读取pkl文件_theano csv到pkl文件我正在尝试将一个pkl文件从csv起点加载到theano中importnumpyasnpimportcsvimportgzip,cPicklefromnumpyimportgenfromtxtimporttheanoimporttheano.tensorasT#OpencsvfileandreadindatacsvFile=”filename.csv”my…

  • 使用pydicom实现Dicom文件读取与CT图像窗宽窗位调整

    使用pydicom实现Dicom文件读取与CT图像窗宽窗位调整1.前言为了能够在Labelme上对Dicom图像进行编辑,这里对python环境下Dicom文件的读取进行了研究。在Dicom图像中CT的窗宽窗位是一个很重要的概念,但是找了半天在pydicom中没有相关设置函数,这里跟DCMTK还不一样。但是可以根据两个tag得到CT图像的CT值,那就是(0028|1052):rescaleintercept和(0028|1053):rescales…

  • 常用的web漏洞扫描工具_系统漏洞扫描工具有哪些

    常用的web漏洞扫描工具_系统漏洞扫描工具有哪些转载自:http://fairysoftware.com/web_lou_dong_sao_miao.html1、AWVS,国外商业收费软件,据了解一个License一年费用是2万多RMB。可见总体漏洞扫描概况,也可导出报告,报告提供漏洞明细说明、漏洞利用方式、修复建议。缺点是限制了并行扫描的网站数。2、OWASPZed(ZAP),来自OWASP项目组织的开源免费工具,提供漏洞扫描、爬虫、Fuzz功能,该工具已集成于KaliLinux系统。3、Nikto,一款开源软件,不仅可用于扫描发现网.

  • 转一篇 台湾人写的 webgame开发文章

    转一篇 台湾人写的 webgame开发文章1。游戏制作的主要流程电脑游戏开发小组中的任何一个人(这个角色通常有策划担任),只要有了一个新的想法或念头,就孕育着一个新游戏的诞生。在这个创意被充分讨论之后,再加上对其操作过程的趣味性及市场销售的可行性的预测等因素的准确判断,一个完整的策划方案才可能产生。在经过充分的讨论后,策划人员必须将讨论的重点写成文字,也就是提出完整的策划方案,经决策者同意认可后,才能进下一步的工作。这份策划方案就像一…

  • KAZE与SIFT算法比较

    KAZE与SIFT算法比较比较KAZE与SIFT的算法。根据测试结果,两种算法对于ubc、bikes、trees和boat四种图集都有很好的鲁棒性,能够准确将图像匹配起来。两种算法的差异主要是在bark、graf、leuven和wall图集中表现出来的。bark图集主要检验特征算法对旋转和缩放的鲁棒性。可见KAZE算法有效检测的特征点少于SIFT算法,而SIFT算

  • SpringBoot集成Quartz实现定时任务的动态创建、启动、暂停、恢复、删除。

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 作者:毅大师 blog.csdn.net/qq_39648029/article/details/108993476…

发表回复

您的电子邮箱地址不会被公开。

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