如果将DispatcherServlet请求映射配置为"/",则Spring MVC将捕获Web容器所有的请求,包括静态资源的请求,Spring MVC会将它们当成一个普通请求处理,因此找不到对应处理器将导致错误
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
解决方案:采用<mvc:resources />进行处理
1.在spring-mvc.xml中添加
xmlns:mvc="http://www.springframework.org/schema/mvc"
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
2.在spring-mvc.xml中添加
<mvc:annotation-driven/>
<mvc:resources mapping="/resources/**" location="/images/"/>
<mvc:resources mapping="/resources2/**" location="/css/"/>
3.如果请求的静态资源放置于/images文件夹下,如图所示
4.则在图片src修改成/resources/article_list.jpg而非/images/article_list.jpg
5.此时再访问时就可以访问静态资源了