全网最通俗易懂的SpringMVC执行流程解析

SpringMVC简单易用,在前后端分离的项目中,甚至不需要我们写视图,只需要会写Controller就算会用SpringMVC了,实际上大部分工作SpringMVC已经帮我们做好了,所以我们要深入理解SpringMVC的执行流程,了解它是怎么工作的 先上一张图,这是我在网上随便找的一张图,相信很多学习SpringMVC的小伙伴都见过这张图,我记得当初老师让我们死记硬背这张图,但是着根本看不懂好吧,就算死记硬背也不会理解。今天我就好好讲讲这张图,如果还不理解的顺着网线过来打我。 相信很多人第一次看到这张图跟我一样都是头皮发麻的,各种专业名词,晦涩难懂。接下来我们就通过讲故事的方式以第一人称角度来分解这张图。

第一步.

当用户发送了一个请求给SpringMVC的老大,老大就找到了一号小弟HandlerMapping处理器映射器,就相当于我给你个人名,你把他电话号码给我找出来,然后一号小弟就通过用户给的url地址找到了对应的controller处理器,然后把结果封装成一个对象交给了老大。通过人名找电话号,和通过url找处理器,这都是一种映射关系,所以一号小弟叫处理器映射器

第二步

老大把一号小弟返回来结果交给二号小弟,HandlerAdapter处理器适配器,看到适配器你们想到了什么,电源适配器,说白了就是手机充电器,苹果充电器充苹果,安卓充电器充安卓,同理老大不会亲自执行controller处理器,这就好像给手机充电需要特定的充电器一样,处理器适配器就是完成这个功能的,二号小弟去执行程序员写的controller处理器,然后把结果然会给老大

第三步

原本这一步老大应该把结果交给三号小弟视图解析器来做的,但是前后分离中老大只能把数据结果返回给前端了,让前端把数据渲染成视图展示给我们的用户甲方爸爸 以下是我自己画的前后端分离流程图,全网独一份,虽然画的有点丑,但是网上你只能找到传统的流程图

经验分享 程序员 微信小程序 职场和发展