Java에서는 Bean Validation이라는 데이터 유효성 검사 프레임워크를 제공하고 있습니다.
Spring에서 이 기능을 이용하면 좀더 유효성 체크를 더 편리하게 할 수 있습니다.
Spring에서 사용하기 위해 Spring Boot Validation Starter를 추가합니다.
이번에 알아 볼 것은 @NotNull, @NotEmpty, @NotBlank 입니다.
어노테이션만 봐서는 실제 기능이 헷갈리니 테스트를 해보도록 하겠습니다.
포스트 기능을 사용하는 RestController를 만들었습니다.
Body의 내용을 받을 Dto를 만듭니다. 처음에는 NotNull 어노테이션을 붙입니다.
Validation 기능을 사용할 수 있도록 인자 부분에 @Valid 어노테이션을 붙입니다.
값을 보내지 않았을때 400 에러가 떨어집니다.
null 값은 체크할 수 있지만 빈 값은 체크하지 못합니다.
이번에는 NotEmpty 어노테이션을 이용합니다.
Null 값에서는 에러가 걸렸습니다.
빈값에도 에러가 걸렸습니다.
하지만 공백을 포함한 빈값에는 통과했습니다.
NotBlank를 사용했습니다.
NotEmpty의 "" 값 체크까지는 동일하고 공백을 포함한 값에는 에러가 검증되었습니다.
결론:
@NotNull : Null 값 체크
@NotEmpty : Null, "" 체크
@NotBlank : Null, "", 공백을 포함한 빈값 체크
'Spring' 카테고리의 다른 글
Propagation 주석 (0) | 2021.08.16 |
---|---|
인터파크 API 사용하기 (0) | 2021.07.26 |
Parameterized Test를 이용해서 여러 값 검증하기 (0) | 2021.01.16 |
Component Scan (0) | 2020.08.15 |
엑셀 업로드 (0) | 2020.05.31 |