>DTO 클래스
: Data Transfer Object
: 클라이언트와 서버 사이에서 데이터를 전송할 때 사용하는 객체
유효성 검사
: 프론트엔드 영역과 백엔드 영역 모두 유효성 검사를 해야한다.
: 프론트엔드 영역의 유효성 검사는 사용자 편의를 위한 유효성 검사일 뿐, 서버에 데이터를 전송하기 전에 조작이 가능해서 백엔드에서도 해야줘야 한다.
DTO 유효성 검사
: 요청 정보를 직접적으로 받는 DTO 클래스의 유효성 검증을 실시함으로써 코드의 복잡도를 낮출 수 있음.
Jakarta Bean Validation
>Jakarta Bean Validation
: 애너테이션을 제공하여 유효성 검증 제약을 표현할 수 있게 해주는 도구이다.
: 하지만 동작하는 코드가 아닌 명세(스펙)이므로 이를 사용하기 위해선 구현을 해야한다.
>Hibernate Validation
: Jakarta Bean Validation 스펙을 구현한 구현체이다.
: Jakarta Bean Validation를 실제로 사용할 수 있게 한다.
Spring Boot Starter Validation 사용
>Java Bean Validation과 Hibernate Validation을 사용하기 위한 스타터이다
>의존성 추가
'org.springframework.boot:spring-boot-starter-validation'
>사용 애너테이션
-@NotBlank
: null, 공백(""), 스페이스(" ")를 허용하지 않음
: 유효성 검증 실패시 기본 에러 메시지 혹은 message 값으로 부여한 메시지를 출력함.
-@Email
: 유효한 이메일 주소인지 검증
-@Pattern(regexp = 정규표현식)
: 정규표현식과 매칭하는지 유효성 검증하는 애너테이션
'코드스테이츠_국비교육 > [Section3]' 카테고리의 다른 글
44_[Spring MVC] 예외 처리_(1) Validation Exception_22.10.25 (1) | 2022.10.25 |
---|---|
43_[Spring MVC] 서비스 계층_22.10.24 (0) | 2022.10.24 |
42.03_[Spring MVC] API 계층; Rest Client_22.10.22 (2) | 2022.10.22 |
42.02_[Spring MVC] API 계층; HTTP Header_22.10.22 (0) | 2022.10.22 |
41_[Spring MVC] API 계층; Controller_22.10.20 (0) | 2022.10.21 |