springmvc源码分析--处理器适配器handlerAdapter

1.在DispatherServlet执行完getHandler方法返回handlerExecutionChain后。下一步找处理器适配器处理处理请求。


2.我们进入getHandlerAdapter()

同样首先遍历所有的handlerAdapter。默认在dispather.properties有三个处理器适配器HttpRequestHandlerAdapter, simpleControllerHandlerAdapter,AnnotaionMethodHandlerAdapter.


3.所有handlerAdapter有两个方法supports,handler(还有一个getLastModified)。supports就是是否支持,或者是否处理这个请求,若支持就调用handler方法。httpRequestHandlerAdaptor他的supports就是判断handler是否实现了httpRequestHandler接口。一旦找到第一个支持请求的handlerAdapter就返回具体的handlerAdapter。


4.拿到实际处理请求的handlerAdapter之后。返回doDispather方法,通过ha(handlerAdapter)执行handler方法,就是调用处理器的handler方法。返回ModelAndView。



猜你喜欢

转载自blog.csdn.net/u014172271/article/details/80475551