Основные инструменты и аннотации для установки ограничений в Java:
Ключевые слова языка:
final
: Для предотвращения изменения значения переменных, состояния объектов или переопределения методов/классов.Аннотации JSR 303 (Bean Validation): Предоставляют стандартный способ определения ограничений на поля, геттеры и параметры методов.
Встроенные аннотации:
@NotNull
: Значение не должно быть null
.@NotEmpty
: Коллекция, массив или строка не должны быть null
и не должны быть пустыми.@NotBlank
: Строка не должна быть null
и должна содержать хотя бы один символ, отличный от пробела.@Size(min=..., max=...)
: Размер (коллекции, массива, строки) должен находиться в указанном диапазоне.@Min(value=...)
: Числовое значение должно быть не меньше указанного.@Max(value=...)
: Числовое значение должно быть не больше указанного.@DecimalMin(value=...)
: Числовое значение (для BigDecimal
, BigInteger
и других численных типов) должно быть не меньше указанного.@DecimalMax(value=...)
: Числовое значение (для BigDecimal
, BigInteger
и других численных типов) должно быть не больше указанного.@Future
: Дата или время должны быть в будущем.@Past
: Дата или время должны быть в прошлом.@Pattern(regexp=...)
: Строка должна соответствовать регулярному выражению.@Email
: Строка должна представлять собой валидный адрес электронной почты.Пользовательские аннотации: Можно создать собственную аннотацию ограничения, снабженную аннотацией @Constraint
и указанием класса-валидатора.
Аннотации для работы с базами данных (JPA): Используются для определения ограничений на уровне схемы базы данных и
Основные инструменты и аннотации для установки ограничений в Java:
Ключевые слова языка:
final
: Для предотвращения изменения значения переменных, состояния объектов или переопределения методов/классов.Аннотации JSR 303 (Bean Validation): Предоставляют стандартный способ определения ограничений на поля, геттеры и параметры методов.
Встроенные аннотации:
@NotNull
: Значение не должно быть null
.@NotEmpty
: Коллекция, массив или строка не должны быть null
и не должны быть пустыми.@NotBlank
: Строка не должна быть null
и должна содержать хотя бы один символ, отличный от пробела.@Size(min=..., max=...)
: Размер (коллекции, массива, строки) должен находиться в указанном диапазоне.@Min(value=...)
: Числовое значение должно быть не меньше указанного.@Max(value=...)
: Числовое значение должно быть не больше указанного.@DecimalMin(value=...)
: Числовое значение (для BigDecimal
, BigInteger
и других численных типов) должно быть не меньше указанного.@DecimalMax(value=...)
: Числовое значение (для BigDecimal
, BigInteger
и других численных типов) должно быть не больше указанного.@Future
: Дата или время должны быть в будущем.@Past
: Дата или время должны быть в прошлом.@Pattern(regexp=...)
: Строка должна соответствовать регулярному выражению.@Email
: Строка должна представлять собой валидный адрес электронной почты.Пользовательские аннотации: Можно создать собственную аннотацию ограничения, снабженную аннотацией @Constraint
и указанием класса-валидатора.
Аннотации для работы с базами данных (JPA): Используются для определения ограничений на уровне схемы базы данных и
Register or sign in to get access to full answers for all questions from the question bank.