Валидация
Валидация входных данных в Spring простыми словами: где валидировать (границы vs домен), Bean Validation (@Valid, @NotNull, @Size), свои ограничения, межполевые проверки и сообщения об ошибках.
Компактный раздел про валидацию входных данных в Spring: где проверять данные, как пользоваться Bean Validation и когда писать свои ограничения. Дополняет разбор REST-ошибок и стайл-гайд по валидации.
- Где валидировать данные — Граница или домен — разбираемся, где ставить @Valid, где держать бизнес-инварианты и почему дублировать проверки во всех слоях вредно.
- Bean Validation в Spring: @NotNull, @Valid и MethodArgumentNotValidException — Как Jakarta Bean Validation работает в Spring Boot: аннотации @NotNull, @Size, @Email на полях DTO, @Valid в контроллере, каскад для вложенных объектов и что происходит при ошибке.
- Свои ограничения и сообщения об ошибках — Как написать кастомный constraint через @Constraint и ConstraintValidator, проверить несколько полей сразу и настроить тексты ошибок через messages.properties.