Примечание:
Я прочитал почти все сообщения стека, которые я получаю, когда я ищу @ valid против @ validated и не могу найти ответ, поэтому я публикую это.
Я так растерялся, что @Validated
делает здесь. Если inputParms
недопустимо, он выбрасывает javax.validation.ConstraintViolationException
и даже не входит в код. Но если я заменю @Validated
на @Valid
Не сработает исключение и bindingResult.hasErrors()
его поймает.
@RestController
@Validated // what is this doing ??
public class MyRestController{
@PostMapping(value="/my-data",produces= {MediaType.APPLICATION_JSON_UTF8_VALUE})
public ResponseEntity<?> doSomething(@Valid @RequestBody MyInputParam inputParms,BindingResult bindingResult){
if(bindingResult.hasErrors()) {
//do something here
}
}
}
Так что, если я использую @Validated
, BindingResult
не пригодится вообще?
Или даже просто, чем @Validated
отличается от @Valid