들어가며,
현재 인프런 야생형 로드맵 첫번째인 JPA 활용편 1을 듣고 있다.
Repository 개념이 나왔는데 Entity를 찾아주는 역할이라고 들었다. DAO와 비슷하다고 했다. 그런데 DAO의 개념이 헷갈려서 다시 한 번 정리하고자 한다.
DAO(Data Access Object) 란??
DB의 data에 접근하기 위한 객체로 실제로 DB에 직접 접근하는 객체이다.
프로젝트의 서비스 모델과 실제 DB를 연결하는 역할을 하며, JPA에서는 DB에 데이터를 CRUD하는 Repository 객체들이 DAO라고 볼 수 있다.
이 둘은 거의 같다고 생각해도 무방하다. repotiroy는 엔티티 객체를 보관하고 관리하는 저장소이고, dao는 데이터에 접근하도록 DB접근 관련 로직을 모아둔 객체이다. 둘다 개념의 차이일뿐 실제로 개발할 때는 비슷하게 사용된다.
@Repository 는 @Component 를 내장하고 있어 스프링이 빈으로 자동 등록을 시켜준다!
참고, 출처 사이트:
https://kbwplace.tistory.com/162
공부하고 있는 단계이기에 내용이 100% 정확하지 않을 수 있습니다.
🍀틀린 부분이나 피드백 환영입니다🍀
'개발일지 > Java & Springboot' 카테고리의 다른 글
[Spring] Spring Boot, REST API, Oracle, MyBatis, Mapper, DTO 간의 상관관계(?) (0) | 2023.11.10 |
---|---|
[Java] POJO란 무엇일까? (0) | 2023.11.10 |
[Spring] [퍼옴] 스프링과 스프링 부트란 무엇인가? 개념 정리 (0) | 2023.11.08 |
객체지향 프로그래밍 OOP란? (2) | 2023.11.08 |
[Spring] Spring boot를 사용한 REST API (0) | 2023.11.05 |