在这里插入图片描述

  1. 用户发送请求到DispatcherSevlet
  2. DispatcherSevlet收到请求调用HandlerMapper处理映射器
  3. 处理映射器根据请求的Url找到具体的Handler(Contorler后端控制器),生成处理器对象及处理器挂载器(如果有则生成)一并返回给DispatherServlet
  4. DispatcherSevlet调用HandlerApapter处理器适配器去调用具体的Handler
  5. 处理器适配器(具体)去执行Handler
  6. Handler执行完成后给处理器适配器返回ModelAndView
  7. 处理器适配器-HandlerApapter向DispatcherSevlet返回ModelAndView,ModelAndView是SpringMVC框架的一个底层对像,包括Model和View
  8. DispatcherSevlet请求视图解析器去进行视图解析,根据逻辑视图名解析真正的视图
  9. 视图解析器向DispatcherSevlet返回View
    10.DispatcherSevlet进行视图渲染,就是将模型数据-ModelAndView对象中的数据填充到Request域
  10. DispatcherSevlet向用户响应结果

springMVC的九大组件

  • HandlerMapping
    处理器映射器,URL与Handler之间映射关系
    一个方法就是一个Handler
    找到对象的处理器和拦截器

  • HandlerAdapter
    处理器适配器,把请求交给具体的Handler来进行处理

  • HandlerExceptionResolver
    用于处理Handler产生异常情况,

  • ViewResolver-视图解析器
    根据逻辑视频解析到真正的视图,反回View

  • RequestToViewNameTranslator
    从请求中获取ViewName,因为ViewResolver根据ViewName查找View,但有的Handler处理完之后没有View,也没有设置ViewName,便要通过这个组件从请求中查找ViewName

  • LocalResolver 本地解析器
    ViewResolver组的ResolverViewName方法 需要2个参数,一个视图名,一个Local,主要用于国际化

  • ThemeResolve-主题解析器,
    样式 图片显示效果的集合

  • MultipartResolver 用于上传请求
    通过将普通请求包装成MultipartHttpServletRequest来实现

  • FlashMapManager
    FlashMap用于重定向时的参数传递,

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐