✅ 문자열 관련 어노테이션
어노테이션 | 설명 | 허용 예시 | 비허용 예시 |
@NotBlank | null , 빈 문자열("" ), 공백 문자열(" " ) 모두 허용하지 않음 | "abc" | null , "" , " " |
@NotEmpty | null , 빈 문자열("" ) 허용하지 않음, 공백 문자열은 허용 | " " , "abc" | null , "" |
@Size(min=, max=) | 문자열, 컬렉션 등의 길이 제한 | @Size(min=2, max=5) → "abc" | "a" (길이 1), "abcdef" (길이 6) |
@Pattern(regexp=) | 정규식 패턴 매칭 검사 | @Pattern(regexp="^[a-zA-Z]+$") → "abc" | "123" , "abc!" |
✅ 숫자 관련 어노테이션
어노테이션 | 설명 | 허용 값 | 비허용 값 |
@Min(value) | 최소값 이상 허용 | @Min(10) → 10 , 11 | 9 |
@Max(value) | 최대값 이하 허용 | @Max(100) → 100 , 99 | 101 |
@Positive | 양수만 허용 ( > 0 ) | 1 , 100 | 0 , -1 |
@PositiveOrZero | 0 이상 허용 ( >= 0 ) | 0 , 1 | -1 |
@Negative | 음수만 허용 ( < 0 ) | -1 , -100 | 0 , 1 |
@NegativeOrZero | 0 이하 허용 ( <= 0 ) | -1 , 0 | 1 |
@Digits(integer=, fraction=) | 정수부, 소수부 자리수 제한 | @Digits(integer=3, fraction=2) → 123.45 | 1234.56 , 123.456 |
✅ null 관련 어노테이션
어노테이션 | 설명 | 허용 | 비허용 |
@NotNull | null 값을 허용하지 않음 | "abc" , 0 , false | null |
@Null | null 값만 허용 (예: 특정 상황에서만 값 입력 제한) | null | "abc" , 1 등 |
Share article