目录
一、SpringMVC重要组件
1、DispatcherServlet 前端控制器
DispatcherServlet 是 Spring MVC 的核心,它接收到所有的请求,并根据请求信息找到合适的处理器(Handler)来处理请求。
2、HandlerMapping 处理器映射器
处理映射器用来查找对应handler,返回给前端控制器。
3、handler 可以理解为在我们代码中有着@xxxmappering注解的方法
@RequestMapping、@GetMapping、@PostMapping等
4、HandlerAdapter 处理器适配器
处理器适配器是用来执行前端控制器选中的handler
二、SpringMVC执行流程
1.接收请求
请求打过来,是先发到前端控制器(DispatcherServlet)上的,前端控制器(DispatcherServlet)将请求发送给处理器映射器(HandlerMapping)。
2.处理器映射器查找Handler
处理器映射器(HandlerMapping)根据请求找对对应的handler处理器(也就是我们代码中的某个controller中的某个有着xxxmapping的方法),并将这个handler,会将其封装成一个HandlerExecutionChain 对象,该对象包含了处理器以及拦截器链(后称执行处理链),并返回给前端控制器。
3.处理器适配器执行Handler
前端控制器(DispatcherServlet)接收到这个执行处理链后会调用处理器适配器(HandlerAdaper)去调用这个Handler。
4.执行业务逻辑
被调用的Handler处理器会根据传来的参数去执行业务逻辑,并返回ModelAndView 给处理器适配器(HandlerAdapter)
5.返回前端控制器ModelAndView
处理器适配器(ModelAndView )将返回来的ModelAndView对象返回给前端控制器(到这里所有的业务处理过程就要完了,接下就是将结果以页面的的形式相应给用户)
6.视图渲染
前端控制器(DispatcherServlet) 根据处理器适配器返回的 ModelAndView 对象,通过 视图解析器(ViewResolver) 解析出具体的视图对象
好了,这次的文章就到这里,喜欢的同学可以点赞收藏,遇到问题,可以评论,或者留言,我一定会第一时间给到回馈,感谢观看!!
注:本文为本人学习时心得分享,有讲错或者需要改正的地方,请指正,我会虚心接受