解读web.xml配置
每一个web应用中都会有一个web.xml文件,在Tomcat安装目录下的conf目录也有web.xml文件,由于每个web应用都要被发布到Tomcat才能运行,Tomcat的web.xml文件相当于每一个web应用的web.xml的父文件,Tomcat将每个应用的公共配置提取出来放在conf目录下的web.xml中,每个应用的个性配置放在自己的web.xml文件中。
分析Tomcat安装目录下的conf目录的web.xml文件,如下:
(1)<servlet-name>default</servlet-name>
对应一个类名为DefaultServlet的Servlet,我们看这个servlet对应的<servlet-mapping>中的映射路径是“/”,匹配所有路径。优先级最低,当用户访问的url没有匹配的Servlet或页面时,访问DefaultServlet ,它会响应给客户端一个404状态码。
(2)<servlet-name>jsp</servlet –name>
对应一个类名为JspServlet的Servlet,该Servlet的映射路径是“*.jsp”、“*.jspx”。即当用户请求的资源是一个jsp页面等时,访问的是JspServlet.我们知道浏览器不能显示动态资源,因此JspServlet的作用就是将当前访问的jsp页面转换成静态的html页面,然后再响应给浏览器。
(3)<session-timeout>30<session-timeout>
该标签是设置session的存活时间为30分钟。
(4)<mime-mapping><extension>htm</extension><mime-type>text/html</mime-type></mime-mapping>
其中<extension>标签的内容指的是响应文件的后缀名,通过后缀名进而知道它的mime类型,即<mime-type>标签的内容。这是服务器告诉浏览器响应回去的响应内容的mime类型。
(5)<welcome-file-list>
该标签的子标签中的内容对应的是欢迎页。在应用的web.xml中如果没有对<welcome-file-list>进行覆盖,那么默认主页为index.html、index.html、index.jsp。