DTO
- 계층 간 데이터 전송을 위해 사용하는 객체로 상태 값을 리턴하거나 수정이 가능
- 단, 객체에 대한 처리(로직)를 포함하고 있지 않음
- 즉, DTO는 초기 설정 된 데이터가 지속적으로 보존 될 것이라느 것을 보장할 수 없음
- Controller → Service 호출 시 Layer 간 데이터 전달이기에 DTO 사용
VO
- 값이 변경될 수 없는 객체로 값이 같다면 동일한 객체로 취급
- DTO와의 가장 큰 차이점은 초기 객체에 설정 된 값이 변경 될 수 없다는 것과 값이 같으면 같은 객체로 취급한다는 점
- 계층 간 데이터를 전달할 때 일반적으로 DTO를 사용하지만 만약 Source에서 설정한 값과 해당 데이터를 전달 받을 Destination에서의 값이 변경되지 않고 같음을 보장하고자 한다면 선택적으로 VO를 사용할 수 있음
'자바 개발자되기' 카테고리의 다른 글
추상 클래스와 인터페이스 (0) | 2020.11.04 |
---|---|
Java - Class Loader System과 Static Variables (0) | 2020.11.04 |
Database CASCADE와 OOP (0) | 2020.11.03 |
Clean Architecture와 Spring MVC - 2. Spring MVC (0) | 2020.11.01 |
Clean Architecture와 Spring MVC - 1. 클린 아키텍처 (2) | 2020.11.01 |