• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

DTO, VO, DAO, Repository에 관련한 질문드립니다.

22.06.14 15:38 작성 조회수 1.24k

1

안녕하세요 강의 정말 유익하게 잘 듣고 있습니다.

 

실무로 스프링을 접하며 강의를 같이 들으며 진행하고 있는데 들으면서 너무 헷갈리는 부분이 있어 문의드립니다. 

 

 

1. DTO 와 VO의 차이 그리고 실무에서 어떤경우에 사용하는지 차이 

 

DTO = 전송되는 데이터를 담는 객체 

VO = getter/setter 로만 구성된 불변하는 데이터를 담는 객체

 

라고 표현이 되는데, 너무 와닿지가 않아서 정확한 차이점을 질문드리고 싶습니다.

 

추가로, 찾아본 예제들에서는 DTO와 VO를 혼합하여 사용하거나 아예 한쪽만 사용하는경우가 혼재되어 많이 헷갈립니다

 

실무에서는 어떤경우에 어떤 구조체를 사용하는건지 문의드립니다. 

 

 

2. DAO와 Repository 의 차이점을 문의드립니다. 

 

제가 알기론, 둘다 DB와 소통을 하는 로직을 구현하는건 같지만

 

DAO는 Data Persistence 를 구체화 한 것이고, 테이블과 더 Low level에서 연관성을 가지고 있고, 

 

Repository는 DAO보다 더 High level로 repository안에 여러개의 dao를 사용하여 구현하기도 하는것으로 알고 있습니다.

 

다만, 예제들을 찾아보면 누구는 DAO로만 구성하여 사용하고, 누구는 Repository만 구현하여 사용하여

 

실무에서 어떤경우에 DAO와 Repository를 사용하는지가 너무 헷갈립니다. 

 

DAO와 Repository가 실무에서 어느때에 사용되는건지 문의도 같이 드리고 싶습니다. 

답변 1

답변을 작성해보세요.

0

David님의 프로필

David

2022.06.15

안녕하세요. tedisagood님, 공식 서포터즈 David입니다.

DTO, VO 차이는 아래 영상을 확인해주세요.

https://www.youtube.com/watch?v=z5fUkck_RZM

DAO, REPOSITORY 차이는 아래 글 답변을 확인해주세요.

https://www.inflearn.com/questions/111159

감사합니다.