NotEmpty vs NotNull 차이점
@NotNull
null 값만 검사합니다
빈 문자열("")이나 공백 문자열(" ")은 유효한 값으로 처리됩니다
모든 객체 타입에 사용 가능합니다
@NotEmpty
null 값과 빈 값을 모두 검사합니다
문자열의 경우: null, "" (빈 문자열) 모두 검증 실패
컬렉션의 경우: null, [] (빈 리스트) 모두 검증 실패
주로 String, Collection, Map, Array에 사용됩니다
// 예시
String name1 = null; // @NotNull, @NotEmpty 둘 다 실패
String name2 = ""; // @NotNull 통과, @NotEmpty 실패
String name3 = " "; // @NotNull, @NotEmpty 둘 다 통과
String name4 = "홍길동"; // @NotNull, @NotEmpty 둘 다 통과
참고로 @NotBlank도 있는데,
이는 null, "", " " (공백만 있는 문자열) 모두 검증 실패로 처리합니다.