1) DTO

전성수·2023년 11월 28일

공개

목록 보기
1/7

DTO

💡 Data Transfer Object

❓계층간 데이터 교환을 하기 위해

client와 직접 상호작용 하는 Controller에서 DB와 연관된 Entity를 직접 사용하지 않기 위해 사용

  • Layer 간의 데이터 교환을 위한 것이므로 다른 로직을 포함할 필요없이 Getter, Setter 함수만 구현 => DB에서 꺼낸 값을 임의로 변경할 필요가 없기 때문에 DTO 클래스는 setter가 필요 없음

  • DB의 데이터가 Presentation Logic Tier로 넘어오게 될 때 DTO의 형태로 사용되는 것

ENTITY

+외부에서 Entity 클래스의 getter 메서드를 사용하지 않도록 해당 클래스 안에서 필요한 로직을 구현

+여기서 구현한 method는 service layer에서 사용

Entity와 DTO를 분리하는 이유

  • View Layer와 DB Layer의 역할 분리
  • 테이블과 매핑되는 entity 클래스가 변경되면 여러 클래스에 영향을 주므로 자주 변경이 가능하게 DTO를 분리 시킴

ref
https://gmlwjd9405.github.io/2018/12/25/difference-dao-dto-entity.html

profile
ㅡ/ㅡ

0개의 댓글