源码解析SpringMVC如何调用Controller目标方法:
浏览器如何访问到Controller目标方法.
1、所有请求进入时候,会先进入org.springframework.web.servlet.DispatcherServlet前端控制器的doDispatch() 方法
2 、在 1016 行 getHandler() 方法中,会通过请求的资源路径 /hello 找到 对应的 XxxController#xxx() 方法返回.
我们叫业务处理方法叫Handler 。
3、在 1023 行 getHandlerAdapter () 方法获取 handler 的适配器( 它用来执行业务方法 )
4、在 1040 行 ha.handle() 方法用于调用业务方法执行 ( 通过反射调用 )
5、请求流程总结
首先请求会先进入 前端控制器 DispatcherServlet .
前端控制器调用 doDispatch() 方法进行请求的分发处理
如何分发请求?
通过请求的资源路径.找到对应的 Controller#xxxx() 业务方法
最后通过反射调用目标方法