通常来讲,HTTP 请求都会被映射到 DispatcherServlet,进而由具体的类来承接处理,但对于相似 js 或者 css 这样的静态资源则不必这样,由于对资源的获取只需返回资源自己便可,无需作其余处理,那么这时就须要对一系列的资源文件作过滤处理。javascript
首先来看 web.xml 中针对 Spring MVC 的一个必要配置,即让 HTTP 请求映射到 DispatcherServlet:css
<servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
过滤配置要在 springmvc-config.xml 中进行,为了让资源文件不通过 DispatcherServlet,参见以下配置:html
<mvc:annotation-driven /> <mvc:resources mapping="/resources/css/**" location="/resources/css/project1/" /> <mvc:resources mapping="/resources/js/**" location="/resources/js/project1/" /> <mvc:resources mapping="/*.html" location="/" />
以上代码针对 css 和 js 分别作了配置,且看以下四点说明:java
<link href="<c:url value="/resources/css/input.css" />" rel="stylesheet" /> <script src="<c:url value="/resources/js/input.js" />" ></script>
<mvc:annotation-driven />