🌱 오늘의 주제 : dto와 entity를 구분해서 구현한 이유
🌱 dto와 entity를 구분
- dto 객체는 View layer와 데이터를 주고받을 때 사용된다.
- entity객체는 db layer와 데이터를 주고받을 때 사용된다.
절대로 테이블과 매핑되는 Entity 클래스를 Request/ Response 클래스로 사용해서는 안됩니다
Entity 클래스는 가장 Core한 클래스라고 보시면 되는데요.
수많은 서비스 클래스나 비지니스 로직들이 Entity 클래스를 기준으로 동작합니다.
Entity 클래스가 변경되면 여러 클래스에 영향을 끼치게 되는 반면 Request와 Response용 DTO는 View를 위한 클래스라 정말 자주 변경이 필요합니다.
View Layer와 DB Layer를 철저하게 역할 분리를 하는게 좋습니다.
실제로 Controller에서 결과값으로 여러 테이블을 조인해서 줘야할 경우가 빈번하기 때문에 Entity 클래스만으로 표현하기가 어려운 경우가 많습니다.
* 참고자료 : https://yoonho-devlog.tistory.com/69
'Spring' 카테고리의 다른 글
SQL 이란? (0) | 2022.12.08 |
---|---|
ERD란? (0) | 2022.12.08 |
Spring - Entity와 Repository차이 (1) | 2022.12.07 |
Spring - 엔터티(Entity) (0) | 2022.12.07 |
Spring - ORM, JPA, Spring Data JPA 차이점 (0) | 2022.12.07 |