运行Spring MVC项目,发现.css,js等文件加载不了,一般是spring MVC的拦截匹配导致的。
例如我在web.xml里这样配置:
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
于是所有请求都会被拦截,包括静态资源。所以,要配置静态资源不经过Spring MVC。在spring-servlet.xml(Spring MVC配置文件)里增加配置如下即可:
<!-- 配置静态资源的路径 -->
<mvc:resources location="/resource/" mapping="/resource/**"></mvc:resources>
<mvc:resources location="/css/" mapping="/css/**"></mvc:resources>
<mvc:resources location="/image/" mapping="/image/**"></mvc:resources>
<mvc:resources location="/js/" mapping="/js/**"></mvc:resources>