SpringMVC中的DispatcherServlet详细解析
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详细解析内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
idea启动与jar包启动中使用resource资源文件路径的问题
这篇文章主要介绍了idea启动与jar包启动中使用resource资源文件路径的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-07-07
idea创建springboot项目和springcloud项目的详细教程
这篇文章主要介绍了idea创建springboot项目和springcloud项目方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-10-10
springboot jasypt2.x与jasypt3.x的使用方式
在软件开发中,将配置文件中的敏感信息(如数据库密码)进行加密是保障安全的有效手段,jasypt框架提供了这一功能,支持通过加密工具类或命令行工具生成密文,并通过修改配置文件和启动参数的方式使用密文和密钥,这样即便配置文件被泄露2024-09-09


最新评论