Часто вижу, как в контроллерах вручную проверяют
@RequestParam на пустоту или формат. Это шумит код и приводит к ошибкам.Вместо этого используйте аннотации валидации прямо на параметрах:
@RestController
@RequestMapping("/api")
@Validated // Обязательно!
public class UserController {
@GetMapping("/users")
public List<User> getUsers(
@RequestParam @NotBlank String name,
@RequestParam @Min(18) int age
) {
// Если валидация не пройдена — автоматически вернётся 400 Bad Request
return userService.findUsers(name, age);
}
}
📌 Ключевые моменты:
- Обязательно ставим
@Validated над классом контроллера.- На параметры добавляем любые стандартные аннотации из
jakarta.validation.constraints.- Ошибки валидации Spring обработает автоматически через
MethodArgumentNotValidException.💡 Можно кастомизировать ответ на ошибку, добавив глобальный
@ExceptionHandler.⚠️ Без
@Validated аннотации на контроллере валидация параметров работать не будет!📲 Мы в MAX
👉@BookJava


