DB에 접근하는 객체이다. 일반적으로 SQL을 사용하여 DB에 접근한 후 CRUD(CREATE, READ, UPDATE, and DELETE) API를 제공한다. Repository 객체라고 생각하면 편할 것이다.
계층 간 데이터 교환을 하기 위해 사용하는 객체로 DTO는 로직을 가지지 않는 순수한 데이터 객체 (getter & setter)만 가진 클래스이다.
값 오브젝트로써 값을 위해 쓰인다. read-only 특징(사용하는 도중에 변경 불가능하며 오직 읽기만 가능)을 가진다.