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

相关推荐
叫我阿柒啊15 分钟前
Java全栈开发实战:从基础到微服务的深度解析
java·微服务·kafka·vue3·springboot·jwt·前端开发
凯尔萨厮32 分钟前
Java学习笔记三(封装)
java·笔记·学习
霸道流氓气质32 分钟前
Java开发中常用CollectionUtils方式,以及Spring中CollectionUtils常用方法示例
java·spring
失散1334 分钟前
分布式专题——5 大厂Redis高并发缓存架构实战与性能优化
java·redis·分布式·缓存·架构
通达的K35 分钟前
Java实战项目演示代码及流的使用
java·开发语言·windows
David爱编程41 分钟前
深入 Java synchronized 底层:字节码解析与 MonitorEnter 原理全揭秘
java·后端
索迪迈科技44 分钟前
Protobuf 新版“调试表示为什么有链接?为什么会打码?我该怎么改代码?
java·log4j·apache
a_blue_ice1 小时前
JAVA 面试 MySQL
java·mysql·面试
月阳羊2 小时前
【硬件-笔试面试题-76】硬件/电子工程师,笔试面试题(知识点:H桥驱动电路的设计要点)
java·单片机·嵌入式硬件·面试·职场和发展
赵星星5202 小时前
MySQL的默认隔离级别:为什么是可重复读(RR)而非读已提交(RC)?
java