본문 바로가기
Spring

Spring - @NotNull, @NotEmpty, @NotBlack

by devLog by Ronnie's 2022. 2. 13.

들어가며


API 개발시 요청 파라미터의 null 체크할시에 해당 어노테이션들이 유용하게 사용할 수 있다. 아니면 따로 null 체크를 하는 util 클래스를 만들어 사용하거나 아니면 if문 등을 통해 null 체크를 해야되는데 그렇게되면 별도의 오류 메시지를 만들거나 조건들에 따라 코드량이 증가할 수 있다. 그럼 해당 어노테이션에 대해 정리한다.

 

@NotNull, @NotEmpty, @NotBlack 정리 및 차이점


@NotNull

- Null만 허용하지 않는다.

- ""(초기화 된 String) or " "(공백)은 허용한다.

- 초기화나 공백의 값이 들어와 저장은 되야하지만 Null로 들어온 경우에는 오류가 나는 변수를 받을 때 사용한다.

 

@NotEmpty

- Null과 "" 둘 다 허용하지 않는다.

- " "(공백)은 허용한다.

 

@NotBlank

- Null, "", " " 다 허용하지 않는다.

 

그 외 Validation Annotation기능들


@NotNull(message = "Null 일 수 없습니다.")

- message 옵션을 통해 Null일 시 메시지를 작성할 수 있다.

@Size(min = 1, max = 10, message = "1~10자 이내여야 합니다.")

- 사이즈를 지정할 수 있으며 해당 사이즈에 해당하지 않을 경우 message를 던지며 예외처리

@Min(1) & @Max(10)

- @Size에 있는 min과 max의 역할과 동일하며 마찬가지로 message 옵션을 사용할 수 있다.

@Email

- 이메일 형식이 아닌 경우 예외처리

댓글