我想使用通用方法来管理5xx错误代码,让我们具体说明db在整个spring应用程序中出现故障的情况.我想要一个漂亮的错误json而不是堆栈跟踪.
对于控制器,我有一个@ControllerAdvice
用于不同异常的类,这也是捕获db在请求中间停止的情况.但这并不是全部.我也碰巧有一个自定义CorsFilter
扩展OncePerRequestFilter
,当我打电话给doFilter
我得到CannotGetJdbcConnectionException
它,它将不会被管理@ControllerAdvice
.我在线阅读了几件让我更加困惑的事情.
所以我有很多问题:
ExceptionTranslationFilter
但这只是处理AuthenticationException
或AccessDeniedException
.HandlerExceptionResolver
,但这让我怀疑,我没有任何自定义异常来管理,必须有一个比这更明显的方法.我还尝试添加一个try/catch并调用一个实现HandlerExceptionResolver
(应该足够好,我的异常没什么特别的)但是这不会在响应中返回任何内容,我得到一个状态200和一个空体.有什么好方法可以解决这个问题吗?谢谢