@NotNull
이름 그대로 null 만 허용하지 않습니다.
따라서, "" 이나 " " 은 허용하게 됩니다.
그렇기 때문에 만약 "" (초기화된 String) )이나 " " (공백) 을 허용하지 않는다면 사용해서는 안됩니다.
@NotEmpty
null 과 "" 둘 다 허용하지 않습니다. (@NotNull 에서 "" 에 대한 validation 이 추가된 것)
" " 은 허용하게 됩니다.
@NotBlank
null 과 "" 과 " " 모두 허용하지 않습니다. (@NotEmpty 에서 " " 에 대한 validation 이 추가된 것)
@NotNull, @NotEmpty, @NotBlank 중 @NotBlank가 가장 validation 강도가 높습니다.