spring mvc:记录异常而不覆盖spring的默认处理程序

时间:2016-08-12 05:46:35

标签: java spring spring-mvc exception-handling

我想记录所有服务器端错误。所以我添加了

@ControllerAdvice
public class MyHandler {

   @ExceptionHandler(Throwable.class)
   ResponseEntity handle(HttpServletRequest req, Throwable t) {
     // if t is clientError return 400
     // else log and return 500
   }    
}

但现在我必须手动列出所有默认弹簧的4xx错误,例如HttpMediaTypeNotSupportedException。我能做些什么才能让spring的默认处理程序处理所有错误,然后才能运行MyHandler

或者在春天还有其他方法可以拦截未处理的错误?

1 个答案:

答案 0 :(得分:0)

您必须将错误处理拆分为单独的方法并实现异常处理逻辑,例如: https://www.mkyong.com/spring-mvc/spring-mvc-exceptionhandler-example/

或者这个:

https://spring.io/blog/2013/11/01/exception-handling-in-spring-mvc