源码跟踪-springmvc(三):RequestMappingHandlerMapping

DispatcherServlet.getHandler

protected HandlerExecutionChain getHandler(HttpServletRequest request) throws Exception {
        if (this.handlerMappings != null) {
            for (HandlerMapping mapping : this.handlerMappings) {
                HandlerExecutionChain handler = mapping.getHandler(request);
                if (handler != null) {
                    return handler;
                }
            }
        }
        return null;
    }

DispatcherServlet.getHandler方法真正调用的其实就是RequestMappingHandlerMapping.getHadler方法,返回的HandlerExecutionChain中有真正的handler和3个拦截器,分别是LongTaskTimingHandlerInterceptorConversionServiceExposingInterceptorResourceUrlProviderExposingInterceptor

  1. RequestMappingHandlerMapping是怎么通过request定位到对应的handler的
  2. RequestMappingHandlerMapping怎么获取到拦截器的,如果我要写个拦截器,应该怎么配置,有什么注意事项

//todo

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • DispatchServlet的service() 一个请求是从一个客户端发出,经过容器然后将请求交与合适的ser...
    fanyank阅读 10,221评论 0 5
  • 对于java中的思考的方向,1必须要看前端的页面,对于前端的页面基本的逻辑,如果能理解最好,不理解也要知道几点。 ...
    神尤鲁道夫阅读 843评论 0 0
  • 本文作者:钟昕灵,叩丁狼高级讲师。原创文章,转载请注明出处。 前言 Spring MVC属于SpringFrame...
    叩丁狼教育阅读 3,334评论 1 4
  • 第一部分 Spring MVC所有的开始都会集中在Servlet上面,查看Spring MVC的源码,你会发现Se...
    远o_O阅读 509评论 0 2
  • 睡觉都有钱赚 梦想生意~思涵系统就是好 无时无可都在赚钱 时间自由 想啥时工作有自己安排 空间自由 上个厕所都有钱...
    天涯人生_59b7阅读 131评论 0 0