web.xml
配置前端控制器dispatchServlet
<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:springMVC-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
- / 可以匹配/login等路径请求,或者以.html,.js,.css等为后缀的请求,但是不能匹配.jsp为后缀的请求。 (test.jsp在路径localhost:8080/xxx/test可以访问,在localhost:8080/xxx/test.jsp会报404错误)
在springmvc的xml中配置/,dispatchServlet会对tomcat中的defaultsevlet配置进行覆盖,这样就不能访问webapp下的静态资源了,这样会更加安全。
开启静态资源访问:
在springMVC的配置文件中增加配置:
<!-- 静态资源放行 -->
<mvc:default-servlet-handler/>
<!-- 开启注解支持 -->
<mvc:annotation-driven/>
- /* 则能够匹配所有请求,例如在使用过滤器时,若需要对所有请求进行过滤,就需要使用/*的写法