在spring1.0+的版本中,配置拦截器后是不会拦截静态资源的。其配置如下:
@Configuration
public class WebMvcConfig extends WebMvcConfigurerAdapter {
@Autowired
private RememberAuthenticationInterceptor rememberAuthenticationInterceptor;
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(rememberAuthenticationInterceptor)
.excludePathPatterns("/static/**")
.addPathPatterns("/**");
}
}
但是在使用spring2.0+时,配置拦截器之后,就会拦截静态资源访问,此时我们需要用对应版本的方式去解决,如下:
@Configuration
public class InterceptorConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new LoginInterceptor())
.addPathPatterns("/**")
.excludePathPatterns("/static/**");
}
}
此处要实现的接口是WebMvcConfigurer。