web.xml作为项目启动首先会读取的文件,该文件的配置影响到整个项目的运行,因此我们有必要对该文件做一个详细的分析。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>MyLibraryDisplayName</display-name>
<!-- 1 -->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/spring-mvc.xml</param-value>
</init-param>
</servlet>
<!--2-->
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!--3-->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>
1.前端控制器配置。
前端控制器是框架中一个非常重要的组件,用户对项目的所有url请求都要经过前端控制器然后分发到各个controller进行处理。contextConfigLocation配置了springmvc的配置文件的路径,如果不配置,默认加载的是/WEB-INF/springmvc-servlet.xml。
2.servlet-mapping配置的三种方式
- *.action:只有以.action结尾的请求才会经过前端控制器。其他的url访问直接跳过前端控制器,直接访问静态资源。
- / : 所有的url访问地址都由DispatcherServlet进行解析,对静态资源的访问也会被前端控制器所解析,然后出现访问不了的情况。
- /* : sprigmvc框架不支持此种配置方式。