SpringBoot中拦截器 Interceptor 的配置和使用
程序员文章站
2022-04-19 21:33:27
...
在不采用安全框架的前提下,使用拦截器来拦截单体项目中前端的一些操作。
- 创建一个自定义的拦截器,实现 HandlerInterceptor 接口中的方法。
@Component
public class MyInterceptor implements HandlerInterceptor {
// 在进入Controller之前执行,默认为false不继续执行,当return为true时,才向下执行
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
return false;
}
// 在Controller之后到达模板引擎之前执行
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
}
// 在模板引擎之后执行
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
}
}
- 创建一个 WebMvcConfig 配置类,实现 WebMvcConfigurer 接口中的addInterceptors 方法。
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
@Autowired
private MyInterceptor myInterceptor;
@Override
public void addInterceptors(InterceptorRegistry registry) {
// 添加拦截器
registry.addInterceptor(myInterceptor)
.excludePathPatterns("") // 排除拦截器要拦截的路径
.addPathPatterns(""); // 添加拦截器需要要拦截的路径
}
}
- 启动项目即可测试拦截器功能。
上一篇: AndroidStudio使用阿里云仓库提高加载依赖速度
下一篇: SiteMesh3使用。注解方式
推荐阅读
-
AndroidStudio中ButterKnife 的配置和使用方法
-
AngularJs中route的使用方法和配置
-
SpringBoot2.0 基础案例(05):多个拦截器配置和使用场景
-
vue中axios解决跨域问题和拦截器的使用方法
-
SpringBoot 多线程 中 @Async 和 ThreadPoolTaskExecutor 的使用
-
spring中过滤器(filter)、拦截器(interceptor)和切面(aop)的执行顺序
-
Springboot中关于 static 和 templates的注意事项, 以及webjars的配置
-
springboot 配置使用拦截器 interceptor
-
Springboot如何获取配置文件application.yml中自定义的变量并使用
-
springBoot之配置文件的读取以及过滤器和拦截器的使用