SpringMVC中拦截器也就是前端控制器,是大环境必须要的内容,它能够配置我们的servlet的加载和拦截。
<!-- 前端控制器,是大环境必须的内容--><servlet><servlet-name>dispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:springmvc.xml</param-value></init-param>
<!-- 使servelet一加载就能够加载spring-ioc的配置文件--><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>dispatcherServlet</servlet-name>
<!-- "/"表示发出任何请求都会经过我们配置的dispatcherServlet--><url-pattern>/</url-pattern></servlet-mapping>
而由于我们在url-pattern中配置的/表示任何资源都将会被我们的拦截器拦截,这就会让我们需要的js,css,png...等待一系列静态资源无法在jsp/html中加载。这是我们进行静态资源过滤的原因。
解决方案,在SpringMVC中配置告诉前端控制器哪些静态资源不用拦截:
<!-- 前端控制器,配置哪些资源不拦截--><mvc:resources mapping="/js/" location="/js/**"></mvc:resources>
<!-- <mvc:resources mapping="/css/" location="/css/**"></mvc:resources>-->
<!-- <mvc:resources mapping="/images/" location="/images/**"></mvc:resources>配置图片和css
-->
location属性的根目录即类路径,在main文件夹下的所有文件夹统称类路径根目录。