728x90
반응형
Validation이란 프로그래밍에 있어서 가장 필요한 부분입니다.
특히 java에서는 null값에 대해서 접근하려고 할 때 null pointer exception이 발생함으로,
이러한 부분을 방지하기 위해서 미리 검증을 하는 과정을 Validation이라고 합니다.
1. 검증해야 할 값이 많은 경우 코드의 길이가 길어진다.
2. 구현에 따라서 달라질 수 있지만 Service Logic과의 분리가 필요하다.
3. 흩어져 있는 경우 어디에서 검증을 하는지 알기 어려우며, 재사용의 한계가 있다.
4. 구현에 따라 달라질 수 있지만, 검증 Logic이 변경되는 경우 테스트 코드 등 참조하는 클래스에서
Logic이 변경되어야 하는 부분이 발생할 수 있다.
@Size | 문자길이 측정 | Int Type 불가 |
@NotNull | null 불가 | |
@NotEmpty | null, ""불가 | |
@NotBlank | null,""," " 불가 | |
@Past | 과거 날짜 | |
@PastOrPresent | 오늘이거나 과거 날짜 | |
@Future | 미래 날짜 | |
@FutureOrPresent | 오늘이거나 미래 날짜 | |
@Pattern | 정규식 적용 | |
@Max | 최대값 | |
@Min | 최소값 | |
@AssertTrue/False | 별도 Logic 적용 | |
@Valid | 해당 object validation 실행 |
'스프링' 카테고리의 다른 글
스프링부트 Annotation (0) | 2022.10.08 |
---|---|
스프링 부트와 스프링의 차이 (0) | 2022.10.08 |
AOP(Aspect Oriented Programming) (0) | 2022.06.27 |
IoC(Inversion of Control), DI(Dependency Injection) (0) | 2022.06.24 |
스프링의 핵심 (0) | 2022.06.24 |
댓글