SpringMVC工作流程

SpringMVC工作流程

image.png
  1. 发请求到前端控制器DispatcherServlet

  2. 前端控制器请求HandlerMapping查找Handler

    可以根据xml配置,注解来进行查找

  3. 处理器映射器HandlerMapping向前端控制器返回Handler

  4. 前端控制器调用处理器适配器HandlerAdapter执行Handler

  5. 处理器适配器执行Handler

  6. Handler执行完成给处理器适配器返回ModelAndView

  7. 处理器适配器向前端控制器返回ModelAndView

    ModelAndView是SpringMVC的一个底层对象,包括Model和View

  8. 前端控制器请求视图解析器进行视图解析

    根据逻辑视图名解析成真正的视图(jsp,freemarker,thymeleaf,excel,pdf...)

  9. 视图解析器向前端控制器返回View

  10. 前端控制器进行视图渲染

视图渲染将模型数据(在ModelAndView对象中)填充到request域

  1. 前端控制器向用户响应结果

组件:

  1. 前端控制器 DispatcherServlet

    作用:接受请求,相应结果(相当于转发器)

    有了 DispatcherServlet就减少了其它组件之间的耦合度

  2. 处理器映射器 HandlerMapping

    作用:根据请求的URL查找Handler

  3. 处理器适配器 HandlerAdapter

    作用:按照特定的规则(HandlerAdapter要求的规则)去执行Handler

  4. 处理器 Handler(需要程序员编写)

    注意:编写Handler时要按照HandlerAdapter的要求去做,这样适配器才能去正确执行Handler

  5. 视图解析器 ViewResolver

    作用:解析视图,根据逻辑视图名解析成真正的视图(View)

  6. 视图 View

    View是一个接口,其实现类支持不同View类型(jsp,freemarker,thymeleaf,excel,pdf...)

你可能感兴趣的:(SpringMVC工作流程)