在 SSM 中设立起拦截器之后,很多静态的资源在加载的时候是会被拦截下来的
所以需要做一点配置
在Web.xml中
<!-- 配置静态资源 -->
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/resource/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.jpg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.png</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.tff</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.svg</url-pattern>
</servlet-mapping>
并且要注意写在 <!-- 配置DispatcherServlet -->之前
然后是 spring-mvc.xml中
<!-- 扫描web相关的bean -->
<context:component-scan base-package="com.library"/>
<!-- 开启SpringMVC注解模式 -->
<mvc:annotation-driven/>
然后要注意的是,访问的资源不能放在 WEB-INF里,因为这是一个安全目录,它里面只存放有Servlet启动的jsp文件
其它的静态资源放在与WEB-INF同级的另一个目录下
用这种方法访问
<link rel="stylesheet" href="${pageContext.request.contextPath }/resource/css/normalize.css">