浅析spring mvc的细节

spring mvc 总体结构

系统监听到请求  -> 通知tomcat  -> 根据web.xml 通知相应的拦截器(spring mvc 一般指DispatcherServlet) --> 检查url是否有相匹配的请求实现  -->web

拿到请求实现bean的适配器(HandlerAdapter) --> 适配器经过RMI调用bean的方法拿到返回结果 --> 包装返回结果ModelAndView --> 解析为Viewspring

--> 视图渲染  --> 返回请求结果.tomcat


  1. 获取HandlerExecutionChain 对象mvc

    1. HandlerMappings遍历取出HandlerMapping,经过HandlerMapping.getHandler()取出HandlerExecutionChain对象.
    2. HandlerMapping.getHandler()方法经过getHandlerInternal()方法,拿到对应的controller的bean.
    3. 经过getHandlerExecutionChain()包装成HandlerExecutionChain对象返回.
    4. getHandlerInternal()方法经过对handlerMap遍历匹配url,拿到对应的controller的bean.
  2. 经过getHandler()获取HandlerAdapter对象app

  3. 经过mv = ha.handle(processedRequest, response, mappedHandler.getHandler());获得视图url

相关文章
相关标签/搜索