【发布时间】:2020-12-17 20:46:24
【问题描述】:
我有关于@ControllerAdvice 和@ExceptionHandler 的一般性问题。我有一个注释为 @RestController 的休息控制器,它有 2 个 API。如果参数验证失败,则抛出 MethodArgumentNotValidException。我创建了ExceptionHandler 来处理这个问题:
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(value = {MethodArgumentNotValidException.class})
public ResponseEntity<String> handleException(MethodArgumentNotValidException e) throws Exception {
return new ResponseEntity<>(e.getBindingResult().getGlobalError().getDefaultMessage(), HttpStatus.BAD_REQUEST);
}
}
如果我想在发生此异常时记录某些内容,我可以在return 语句之前添加一行代码,例如:
LOG.info("something happened");
它会记录它然后将 BAD_REQUEST 返回给调用者吗?
【问题讨论】:
标签: java spring rest exception annotations