DTO는 Data Transfer Object의 약자로,
계층 간 데이터 교환 역할을 한다고 하는데...
실제로 DB
에 접근하는 객체
/
Service
와 DB
를 연결하는 고리 역할
을 한다고 하는데
사실 처음 봤을 때는 Entity
파일과 왜 나눠 쓰는지 잘 이해가 되지 않았다.
생긴 것도 되게 비슷...
하지만 Entity 파일과 DTO 파일을 분리해야되는 이유가 이 있다고 하는데 알아 봤더니,
View Layer와 DB Layer의 역할을 철저하게 분리하기 위해
그리고
테이블과 매핑되는 Entity 클래스(1대1로 대응 되는 관계)가 변경되면 여러 클래스에 영향을 끼치게 되는 반면,
View와 통신하는 DTO 클래스(Request / Response 클래스)는 자주 변경되므로 분리해야 한다.
즉, 자주 변경 될 수 있는 데이터는 DTO에 담아 따로 분류 한다고 이해함...
https://gmlwjd9405.github.io/2018/12/25/difference-dao-dto-entity.html