이전
javax.validation.constraints
패키지 내의 @NotNull
, @NotBlank
, @NotEmpty
어노테이션은 Java 객체의 유효성 검사에 사용되며, 각각 다른 유형의 제약 조건을 나타냅니다.
-
@NotNull: 이 어노테이션은 해당 필드의 값이
null
이면 안된다는 것을 나타냅니다. 필드의 값이 객체일 수도 있고, 기본 데이터 타입일 수도 있으며, 값이null
이 아니라면 유효합니다. 비어있는 문자열이나 공백도 유효하게 간주됩니다. -
@NotEmpty: 이 어노테이션은 문자열, 컬렉션, 배열, Map 등이 비어있지 않아야 함을 나타냅니다.
null
또는 비어있는 값이면 안됩니다. 단순히 공백으로 구성된 문자열은 유효합니다. -
@NotBlank: 이 어노테이션은 문자열에만 적용할 수 있으며, 문자열이
null
이거나 비어있거나 공백으로만 이루어져 있으면 안됩니다.
요약하면:
@NotNull
:null
만 불가능합니다.@NotEmpty
:null
이거나 비어있는 컬렉션, 배열, 문자열은 불가능합니다.@NotBlank
:null
, 비어있는 문자열, 공백만 있는 문자열은 불가능합니다.
각 어노테이션은 특정한 유효성 제약 조건을 나타내므로, 검사하려는 필드의 특성에 따라 적절한 어노테이션을 선택해야 합니다.