JavaWeb开发进阶SpringMVC的DispatcherServlet
本书作者:测试开发刚哥,文章版权归个人所有,未经授权请勿转载。 DispatcherServlet简介 DispatcherServlet是Spring MVC框架的核心组件,充当前端控制器(Front Controller)的角色。它负责接收所有的HTTP请求,并将它们分发给适当的处理器(控制器)。DispatcherServlet是整个Spring MVC应用程序的入口点,管理请求的整个生命周期。 通过源码查看DispatcherServlet定义: public class DispatcherServlet extends FrameworkServlet public abstract class FrameworkServlet extends HttpServletBean implements ApplicationContextAware public abstract class HttpServletBean extends HttpServlet implements EnvironmentCapable, EnvironmentAware DispatcherServlet继承了FrameworkServlet,继承了HttpServletBean,继承了HttpServlet。HttpServlet来自jakarta.servlet.http.HttpServlet,也就是新版Servlet: <dependency> <groupId>jakarta.servlet</groupId> <artifactId>jakarta.servlet-api</artifactId> <version>6.1.0</version> <scope>provided</scope> </dependency> 果然,Spring MVC是基于Servlet的! DispatcherServlet注册 DispatcherServlet是个Servlet,需要注册后才能使用。有3种注册方式:web.xml、Spring MVC、Spring Boot ① web.xml <web-app> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/app-context.xml</param-value> </context-param> <servlet> <servlet-name>app</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value></param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>app</servlet-name> <url-pattern>/app/*</url-pattern> </servlet-mapping> </web-app> ② Spring MVC ...