옛날에 엔테크에서 인턴을 할때 유효성 검사를 하기위해 Validation 클래스를 만들어 Controller에서 유효성 검사를 하는 로직을 직접 다 구현했었다. 프론트의 코드는 조작이 가능하기 때문에 유효성검사가 사실상 효과가 없기 때문에 백엔드에서도 유효성검사를 해주는 게 좋기 때문이다.
직접 구현보다 Hibernate Validator를 사용한다면 좀 더 편리하게 유효성 검사를 할 수가 있다.
프로젝트에서 gradle을 사용하기 때문에 gradle이다.
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-validation'
}
maven을 사용한다면 mvnRepository에서 확인하면 된다.
어노테이션은 여기 docs에 가보면 자세하게 설명이 되어있다. 여기서는 내가 주로 사용한 어노테이션들을 소개하겠다.
어노테이션 | 설명 |
---|---|
@Null | Null인가? |
@NotNull | Null이 아닌가? |
@Size | 최소,최대 범위를 만족하는가? |
@Positive | 양의 정수인가? |
@PositiveOrZero | 양의 정수 또는 0인가? |
@Future | 미래날짜 인가? |
@Past | 과거날짜 인가? |
@Pattern | 정규표현식 만족하는가? |