Spring/+ α

DTO, DAO에 대해서

y-seo 2023. 11. 15. 10:40

 DTO란?

  • Data Transfer Object
  • 데이터 전송 객체
  • 프로세스 간 데이터를 전달하는 객체
  • 비즈니스 로직을 포함하지 않는다.
  • 순수하게 전달하고 싶은 데이터만 포함된다.
  • getter/setter 메소드만 가진다
  • DB에서 데이터를 받아 Service나 Controller로 보낸다.
  • Entity를 DTO 형태로 변환하여 사용한다.
  • Resopnse와 Request 모두 적용할 수 있다.
  • 일종의 Wrapper라고 볼 수 있다.
  • 가변적이다.

 

 DAO란?

  • Data Access Object
  • 실제로 DB에 접근하기 위한 객체
  • CRUD 기능을 수행한다.
  • Service와 DB 사이의 연결 역할을 한다.
  • 일반적으로 Repository package로 표현한다. 사실 거의 같다고 봐도 된다.
    • Repository는 Entity 객체를 보관하고 관리한다.
    • DAO는 데이터에 접근하도록 DB 접근 관련 로직을 모아둔 객체이다.