묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
DTO, VO, DAO, Repository에 관련한 질문드립니다.
안녕하세요 강의 정말 유익하게 잘 듣고 있습니다. 실무로 스프링을 접하며 강의를 같이 들으며 진행하고 있는데 들으면서 너무 헷갈리는 부분이 있어 문의드립니다. 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가 실무에서 어느때에 사용되는건지 문의도 같이 드리고 싶습니다.
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
DAO와 REPOSITORY의 차이점...
안녕하세요 항상 좋은 강의 제공해주셔서 감사드립니다. 강의를 듣다보니 dao와 repository의 차이점이 궁금해서 질문을 남깁니다. 검색해보니 dao는 data persistence의 추상화 , repository는 collection of objects의 추상화라고 하는데, 사실상 둘의 기능은 비슷하다고 생각합니다. 하지만 둘의 차이를 명확하게 알고 싶어 질문드립니다. 혹시 mybatis를 사용할때 sql과 매핑할때 dao를 사용하고, repository는 엔티티를 영속성 컨텍스트에 영속화 시킬때 사용하는건가요???
-
미해결스프링 핵심 원리 - 기본편
DAO 관련 질문드립니다.
안녕하세요. 김영한님. 수업에 직접적으로 언급된 내용은 아니지만 업무를 하다 궁금한게 생겨 이렇게 질문 드립니다. 현재 회사에서 사용하는 Spring 프로그램이 https://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte2:psl:dataaccess:mybatisguide "3.1 기존 DAO 형태로 사용하는 경우"를 따르고 있습니다. DAO라고 명시된 파일은 mybatis에 접근하는 sqlSession만 작성해서 return하고, 그 전에 Service에서 모든걸 처리하고 필요한 해당 DAO를 Service가 호출 하여 DB에 접근합니다. 궁금한 부분은 강의에서 언급된 @Repository를 사용한 interface 로 Service에서 필요한 로직을 처리하고, Service 마지막에 sqlSession으로 return 해주것과 큰 차이가 있는지 궁금합니다. 왜 굳이 한번더 감싸(?) 주는지 잘모르겠습니다. 이렇게 구현해야 할 특별한 이유가 있을까요?