在这里插入图片描述

如题,三天前的晚上,“是大佬鸭”,突然问我,怎么“朴素”表达SpringMVC?以下是我当时的回答,先记录一下。日后面试(面经),再做修改或补充

【简单的描述流程】:

  1. 浏览器发起请求,例如GET方式请求的/request,首先会被前端控制器(DispatcherServlet)拦截到。
  2. 拦截后,交给处理器映射器(HandlerMapping),处理器映射器拿到GET方式的/request请求,会去IOC容器里寻找能够处理它的控制器,然后将找到的具体控制器告诉前端控制器(DispatcherServlet)。
  3. 前端控制器(DispatcherServlet)拿到具体的控制器后,会去访问这个控制器Controller。控制器内部会调用相关的业务逻辑代码,然后将数据封装到ModelAndView(包含携带的数据和跳转的视图信息)中,返回给前端控制器(DispatcherServlet)。
  4. 前端控制器(DispatcherServlet)拿到ModelAndView后,会把它传递给视图解析器(ViewResolver),视图解析器进行解析后,再次传递给前端控制器(DispatcherServlet)。
  5. 一旦确定视图View,前端控制器(DispatcherServlet)将把模型数据传递给视图View,最后呈现在浏览器中。
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐