Javaweb(十) - javaweb其他知识点
1、详解DefaultServlet与JspServlet
参考博客-->详解DefaultServlet与JspServlet
1.1DefaultServlet小结
当服务端收到关于Servlet的请求之后交由自定义Servlet处理。
当服务端收到关于静态资源的请求时交由DefaultServlet处理。
当自定义Servlet的< url-pattern ></ url-pattern >与Tomcat自带Servlet的< url-pattern ></ url-pattern >配置相同时,优先采用自定义Servlet中的相关配置。假若,自定义Servlet无法处理时再交由Tomcat自带Servlet处理。
1.2 DefaultServlet应用场景
在web.xml中配置了DispatcherServlet,在该配置中通过< url-pattern >/</ url-pattern >拦截包括了静态资源在内的所有请求!故,此时需要在web.xml开启类似于DefaultServlet的配置用于处理静态资源,代码如下:
<mvc:default-servlet-handler/>
在此配置下在Spring MVC关于Servlet的请求交由DispatcherServlet处理,关于静态资源的请求DispatcherServlet无法处理则交由< mvc:default-servlet-handler/> 处理。
< mvc:default-servlet-handler/> 将在SpringMVC上下文中定义一个类型为DefaultServletHttpRequestHandler的Handler,该Handler会对进入 DispatcherServlet 的请求进行筛查,
小结如下:
1、DispatcherServlet优先级高于默认处理器handler。
2、假若请求是经过映射的,则由DispatcherServlet处理。
3、假若请求与静态资源相关则将该请求转交默认处理器handler处理。
1.3 JspServlet详解
类似地,在Tomcat服务器的web.xml文件中存在一个类型为org.apache.jasper.servlet.JspServlet名为jsp的Servlet。默认情况下,该Servlet用于处理jsp相关请求。
所以,我们平常看到的关于静态资源的请求和jsp的请求之所以有响应是因为Tomcat服务器帮我们进行相关配置。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~