1. 계층별 관심사의 분리
- DTO는 컨트롤러 같은 클라이언트 단과 직접 마주하는 계층에서 데이터 교환할 때 쓰이는 자료구조
- View 와 Controller 사이에서 데이터를 주고받을 때 활용성이 높음
- DTO는 자료구조의 역할만 할 뿐 어떠한 기능 및 동작이 없어야 함
- Entity 객체는 실제 DB 테이블과 매핑되는 핵심 클래스
- 데이터 베이스의 테이블에 존재하는 칼럼들을 필드로 가지는 객체
2. 코드 구성의 단순화
3. REST API 스펙의 독립성 확보
- DB로부터 조회된 Entity를 그대로 View로 넘기게 되었을 때 불필요한 정보 및 노출되면 안되는 정보까지 노출되는 것을 막음 (패스워드 같은 원하지 않는 데이터 제외 가능)
- API 문서로써의 역할 => 유지보수 용이
참고
'부트캠프 기록 > Section3' 카테고리의 다른 글
[Spring MVC] JBDC 기반 데이터 엑세스 계층 (0) | 2022.10.30 |
---|---|
[Spring MVC] API 계층_DTO(Data Transfer Object) (0) | 2022.10.29 |
[Spring MVC] API계층_Controller (0) | 2022.10.29 |
[Spring MVC] 예외처리 (0) | 2022.10.27 |
[Spring MVC] Spring MVC 아키텍처 (0) | 2022.10.22 |