SpringMVC中的DispatcherServlet详细解析
作者:nuomizhende45
这篇文章主要介绍了SpringMVC中的DispatcherServlet详细解析,DispatcherServlet也是一个Servlet,它也能通过Servlet的API来响应请求,从而成为一个前端控制器,Web容器会调用Servlet的doGet()以及doPost()等方法,需要的朋友可以参考下
DispatcherServlet详细解析
对照这流程的第一步发起请求到前端控制器DispatcherServlet,首先看看DispatcherServlet这个类,为什么所有的请求能发给这个类,看下这个类的结构图:
这里我们发现了这个DispatcherServlet通过继承FrameWorkServlet、HttpServletBean从而间接的继承了HttpServlet,所以说这个DispatcherServlet也是一个Servlet,它也能通过Servlet的API来响应请求,从而成为一个前端控制器。
Web容器会调用Servlet的doGet()以及doPost()等方法,这里FrameworkServlet重写了HttpServlet的这两个方法,里面都调用了processRequest这个方法
继续跟进,经过了一些简单的处理后发现最终还是调用了doService方法
继续跟进这个doService方法,发现它是一个等待子类实现的抽象方法,DispatcherServlet是它的子类并且实现了该方法,所以最终请求时通过FrameworkServlet的简单处理之后调用了DispatcherServlet的doService方法。
至此我们已经清楚了为什么DispatcherServlet为前端控制器了
到此这篇关于SpringMVC中的DispatcherServlet详细解析的文章就介绍到这了,更多相关DispatcherServlet详细解析内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!