当前位置: 首页 > 知识库问答 >
问题:

java-springboot项目全局异常处理器无法处理的异常会流转到哪里?

彭鸿畅
2024-08-15

一.问题前置信息
1.1项目配置了token拦截器只重写了preHandle()方法
1.2全局异常处理器只处理了两个token相关的自定义异常
1.3登录接口配置了白名单,请求不会经过拦截器
二.问题描述:页面调用登录接口,内部异常流转到了拦截器的preHandle()方法内?

三.问题详细描述
接口内部调用了org.mybatis.spring包下的SqlSessionTemplate类的selectOne()方法,然后sql查询出两条数据抛出异常TooManyResultsEeception(),按我理解的应该异常会到全局异常处理器,但没有对应的handler处理,第一个我想问此时没有handler处理,异常会往哪走,之前看网上是说会被servlet捕获然后返回错误信息,现在的情况是发现走了token拦截器的preHandle()里,相应的就抛出了一个未携带token的自定义异常,然后被全局异常捕获再返回?我知道请求在调完接口后还会走到拦截器的postHandle(),但我一配置了白名单,二postHandle()也没重写,怎么会走到preHandle()了?

共有1个答案

壤驷旭
2024-08-15

打日志,debug看看

 类似资料:
  • 本文向大家介绍springboot全局异常处理详解,包括了springboot全局异常处理详解的使用技巧和注意事项,需要的朋友参考一下 一、单个controller范围的异常处理 说明: 在controller中加入被@ExceptionHandler修饰的类即可(在该注解中指定该方法需要处理的那些异常类) 该异常处理方法只在当前的controller中起作用 二、全部controller范围内起

  • 统一错误处理 文档:https://eggjs.org/zh-cn/tutorials/restful.html 自定义一个异常基类 // app / exceptions / http_exceptions.js class HttpExceptions extends Error { constructor(msg='服务器异常', code=1, httpCode=400) {

  • springboot全局异常处理器处理顺序问题 在使用异常处理器时,代码 当出现数据库异常时,返回 按理说越精确优先级越高,SQLIntegrityConstraintViolationException继承SQLException,为什么返回的却是被Exception异常捕获?求解答 我尝试注释Exception异常捕获,此时异常能被SQLException捕获

  • Middleware: 全局异常处理 我们在岩浆的实例其实已经注意到了,compose 的连接方式,让我们有能力精确控制异常。 Koa中间件最终行为强依赖注册顺序,比如我们这里要引入的异常处理,必须在业务逻辑中间件前注册,才能捕获后续中间件中未捕获异常,回想一下我们的调度器实现的异常传递流程。 <?php class ExceptionHandler implements Middleware

  • 问题内容: 有没有一种方法可以在Java中创建全局异常处理程序。我想这样使用: 处理程序可能无法捕获在主体中引发的异常。 马丁 问题答案: 使用Thread.setDefaultUncaughtExceptionHandler。有关示例,请参见Rod Hilton的“ Global Exception Handling ”博客文章。

  • 本文向大家介绍springboot全局异常处理代码实例,包括了springboot全局异常处理代码实例的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了springboot全局异常处理代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 前言: 开发中异常的处理必不可少,常用的就是 throw 和 try catch,这样一个项目到最