Spring поддерживает два разных метода проверки: Spring валидация и проверка JSR-303 bean. Оба могут быть использованы путем определения валидатора Spring, который делегирует другим делегатам, включая валидатор bean. Пока все хорошо.
Но когда аннотирующие методы действительно запрашивают проверку, это еще одна история. Я могу так аннотировать
@RequestMapping(value = "/object", method = RequestMethod.POST)
public @ResponseBody TestObject create(@Valid @RequestBody TestObject obj, BindingResult result) {
или как это
@RequestMapping(value = "/object", method = RequestMethod.POST)
public @ResponseBody TestObject create(@Validated @RequestBody TestObject obj, BindingResult result) {
Здесь @Valid - javax.validation.Valid, а @Validated - org.springframework.validation.annotation. Утвержденные. Документы для последнего говорят
Вариант JSR-303 Действителен, поддерживая спецификацию валидации групп. Предназначен для удобного использования с поддержкой Spring JSR-303, но а не JSR-303.
что не очень помогает, потому что оно не говорит точно, как оно отличается. Если вообще. Оба, похоже, работают очень хорошо для меня.