在Spring Mvc Java中记录未处理的异常

时间:2015-09-29 09:12:59

标签: java spring spring-mvc exception-handling

我想在整个应用程序中捕获异常并将它们保存到我的数据库中。我很难选择使用哪种方法。我知道我希望全局处理异常。我正在引用这个来源:https://spring.io/blog/2013/11/01/exception-handling-in-spring-mvc我有@controlleradvice但是例外情况根本没有。有人能为我提供一个如何做到这一点的具体例子吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以一起使用ControllerAdviceExceptionHandler注释来捕获特定的异常,并随意执行任何操作。作为@M。 Deinum说,对于异常日志记录,您可以通过使用logback或log4j Database Appender来获得相同的结果,但仍然可以捕获Service Layer中的异常,并将它们转换为更合适的说法{{1 s,像这样:

Status Code

此异常处理程序捕获由@ControllerAdvice(annotations = RestController.class) public class GenericServiceExceptionHandler { @ExceptionHandler(Exception.class) public ResponseEntity handleUncaughtException(Exception ex) { return badRequest(ex.getMessage()).build(); } } 注释的bean抛出的所有Exception异常,并将其转换为RestController响应。