DTO는 기본적으로 자료구조라고 하였습니다. 그렇다면 getter/setter를 사용하지 않고 각각의 필드 값에 직접적으로 접근하는 것이 더 맞는 방향성이 아닌가? 라는 질문이 생겼습니다.
DTO에서 Getter/Setter를 사용하는 이유는 아래와 같습니다.
위의 사항들이 아닐 경우 완전한 자료구조로서의 DTO도 충분히 가능합니다.
좀더 실질적인 Getter가 필요한 예시는 Jackson을 사용하여 JSON 형식으로 객체를 변환할 때 입니다. 내부적으로 getter를 사용하여 역/직렬화를 거치기 때문입니다.
참고: