DTO와 VO

최대 1 분 소요

  • DTO: Data Transfer Object의 약어로, 계층 간 데이터 통신에 이용되는 객체
    • 속성에 접근하기 위한 getter와 setter를 갖는다.
    • 로직을 갖지 않고, 순수한 데이터 객체이다.
  • VO: Value Object의 약어로, 도메인에서 한 개 혹은 그 이상의 속성들을 묶어 특정 값을 나타내는 객체
    • eqauls와 hashCode 메서드를 Override 해야 한다. - 타입과 내부 속성 값이 같다면, 같은 객체로 취급한다.
      • equals는 객체의 동일성이 아닌 속성 값의 동등성 비교를 위해 재정의 해야한다.
      • hashCode는 메모리 주소값이 아닌 지정한 특정 값을 통해 비교하기 위해 재정의 해야한다.
    • setter가 없는 불변 객체여야 한다.
      • 값을 표현하기 위해 불변이어야 한다. (read only)
      • 값을 수정할 수 없고 새로 생성해야 한다.

태그: ,

카테고리:

업데이트:

댓글남기기