您要么必须创建一个
ControllerAdvice处理
MethodArgumentNotValidExceptionhibernate验证程序抛出的错误的方法,例如以下示例:
@ResponseStatus(BAD_REQUEST) @ResponseBody @ExceptionHandler(MethodArgumentNotValidException.class) public CustomError methodArgumentNotValidException(MethodArgumentNotValidException ex) { BindingResult result = ex.getBindingResult(); List<org.springframework.validation.FieldError> fieldErrors = result.getFieldErrors(); return mapToCustomError(fieldErrors); }或者,您可以注入
BindingResult控制器方法并检查其中的验证是否失败:
@PostMapping("/ibantoiban") public ResponseEntity<String> sendMoneyIbanToIban(@Valid @RequestBody IbanToIbanRequest ibanToIbanRequest, BindingResult bindingResult) { if (bindingResult.hasErrors()) { } Transaction transaction = transactionService.sendMoneyIbanToIban(ibanToIbanRequest); HttpHeaders headers = new HttpHeaders(); headers.add("Location", "/ibantoiban" + transaction.getTransactionId().toString()); return new ResponseEntity(headers, HttpStatus.CREATED); }


