springMVC中过滤器抛出异常,自定义异常捕获

在过滤器中引入org.springframework.web.servlet.HandlerExceptionResolver

java 复制代码
    @Autowired
    @Qualifier("handlerExceptionResolver")
    private HandlerExceptionResolver resolver;
// doFilter中处理
            if (条件1) {
                if (条件2) {
                    resolver.resolveException(request, response, null, new Myself403ForbiddenException("403ForbiddenException"));
                    return;
                }
                filterChain.doFilter(servletRequest, servletResponse);
                return;
            }

Spring Boot全局异常处理@RestControllerAdvice只会捕获所有Controller层抛出的异常,在filter当中抛出的异常GlobalExceptionHandler类是感知不到的,所以在filter当中抛出的异常最终会被Spring框架自带的全局异常处理类BasicErrorController捕获

附:https://blog.csdn.net/m0_37731470/article/details/116754395

相关推荐
星空ξ几秒前
OpenCode + Oh-My-OpenCode 配置指南:集成 GitHub Copilot 模型与 Java LSP (jdtls)
java·github·copilot·opencode·oh-my-opencode
Seven97几秒前
Tomcat Request请求处理:Container设计
java
逸Y 仙X3 分钟前
文章十五:ElasticSearch 运用ingest加工索引数据
java·大数据·elasticsearch·搜索引擎·全文检索
京师20万禁军教头12 分钟前
35面向对象(中级)-编程思想
java
yuzhiboyouye14 分钟前
java redis(缓存)
java·redis·缓存
大大杰哥22 分钟前
DAG 学习笔记:从拓扑排序到并行执行
java
2501_9130613423 分钟前
JVM虚拟机——面试中的八股文(下)
java·jvm·面试
京师20万禁军教头25 分钟前
36面向对象(高级)-类变量(静态变量)和类方法(静态方法)
java
deviant-ART26 分钟前
HttpServletResponse 中 Header 与 OutputStream 的正确使用顺序(避坑指南)
java·后端·servlet
JAVA面经实录91729 分钟前
Spring AI 高频开发万能 Prompt 合集 + 生产级工具类
java·人工智能·spring·prompt