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