栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringMVC的工作流程

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringMVC的工作流程

 

1.用户发送请求至前端控制器DispatcherServlet.

2.DispatcherServlet收到请求调用HandlerMapping处理器映射器。

3、 处理器映射器根据不同的请求找到具体的处理器(可以根据xml配置、注解进行查找),生成HandlerExecutionChain(处理器对象及处理器拦截器handlerinterceptor(如果有则生成))一并返回给 DispatcherServlet。

4、 DispatcherServlet 根据获得的 Handler,选择一个合适的HandlerAdapter。

5、 HandlerAdapter经过适配调用具体的处理器(controller,也叫后端控制器)执行具体的业务方法(在handler业务方法执行之前,会做一定的业务逻辑处理:表单校验等)。

6、 Controller执行完成返回ModelAndView处理器适配器(处理完的结果数据:包括逻辑试图和业务模型)。

7、 HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet。

8、 DispatcherServlet将ModelAndView传给ViewReslover视图解析器。

9、 ViewReslover解析后(将逻辑视图解析为物理视图)返回具体View。

10、DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。

11、 DispatcherServlet响应用户

适配器作用:

        SpringMVC涉及的映射器,视图解析器的作用不难理解,映射器负责将前端请求的url映射到配置的处理器,视图解析器将最终的结果进行解析,但中间为什么要经过一层适配器呢,为什么不经映射器找到controller后直接执行返回呢?

        那是因为SpringMVC为业务处理器提供了多种接口实现(例如实现了Controller接口),而适配器就是用来根据处理器实现了什么接口,最终选择与已经注册好的不同类型的Handler Adapter进行匹配,并最终执行,例如,SimpleControllerHandlerAdapter是支持实现了controller接口的控制器,如果自己写的控制器实现了controller接口,那么SimpleControllerHandlerAdapter就会去执行自己写的控制器中的具体方法来完成请求.

有时候面试会问到这样一个问题: 前端发送一个请求,后端是如何做的处理?

侧重点就是在问SpringMVC的工作流程

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/571285.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号