这个是参考的文章
https://blog.csdn.net/qq_27828675/article/details/80923678
然后第七步的拦截器不知道为什么没办法拦截。
这是后面解决问题的文章
https://www.cnblogs.com/deng720/p/8989388.html
我的代码
@EnableWebMvc
@Configuration
public class MyWebAppConfigurer implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
//排除拦截
List<String> exc = new ArrayList<>();
//登陆
exc.add("/login");
//注册
exc.add("/user/save");
// addPathPatterns 用于添加拦截规则
// excludePathPatterns 用户排除拦截
registry.addInterceptor(authenticationInterceptor())
.addPathPatterns("/**")
.excludePathPatterns(exc);
}
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
argumentResolvers.add(currentUserMethodArgumentResolver());
}
@Bean
public CurrentUserMethodArgumentResolver currentUserMethodArgumentResolver() {
return new CurrentUserMethodArgumentResolver();
}
/**
* 解决 拦截器中注入bean 失败情况出现
* addArgumentResolvers方法中 添加
* argumentResolvers.add(currentUserMethodArgumentResolver());
*/
@Bean
public AuthenticationInterceptor authenticationInterceptor() {
return new AuthenticationInterceptor();
}
}