DTO 클래스?

NOVEMBER 10, 2020

DTO

  • Data Transfer Object
  • 각 레이어 사이에 데이터를 전달하기 위한 목적으로 사용하는 Object
  • View Layer와 DB Layer의 역할 분리를 하기위함으로 사용

    • API의 req와 res에 맞게 domain이 수정될 필요 없다.
    • req, res에 불필요한 properties 가 들어가지 않는다.
  • 필수 값에 대한 조건 체크하는 것이나 DTO 에서 Domain 으로 변환하거나, Domain 에서 DTO 로 변환하는 로직은 Domain 이 아닌 DTO 에 담겨야 한다.
  • @NotNull 과 같은 Data 의 Validation 도 DTO 의 역할 이기 때문에 DTO 에 넣어주게 되면 역할과 책임이 좀 더 명백해지게 된다.

작업 기록 블로그