728x90
📌 Spring Data JPA란?
- JPA 구현체(Hibernate)를 좀 더 쉽게 사용하고자 추상화시킨 모듈
- Spring Boot에서 쉽게 사용할 수 있는 추가적인 API를 제공한다.
📌 Hibernate VS Spring Data JPA
사실 Hibernate와 Spring Data JPA를 사용하는 것은 큰 차이가 없는데 왜 Spring Data JPA가 등장했을까?
✔️ 구현체 교체의 용이성
- 구현체 교체의 용이성이란? Hinernate 외에 다른 구현체로 쉽게 교체할 수 있다는 뜻이다.
- Spring Data JPA 내부에서 구현체 매핑을 지원해주기 때문에 새로운 구현체가 등장하면 쉽게 옮길 수 있다.
✔️ 저장소 교체의 용이성
- 저장소 교체의 용이성이란? 관계형 데이터베이스 외에 다른 저장소로 쉽게 교체할 수 있다는 뜻이다.
- 만약 Mysql에서 MongoDB로 교체가 필요하다면 단순히 의존성만 교체하면 된다.
- Spring Data 하위 프로젝트의 기본적인 CRUD의 인터페이스가 같기 때문에 가능하다.
📌 Spring Data JPA의 장단점
✔️ 장점
- 겍체지향 개발이 가능하다. 따라서 객체 자체에 집중 가능하다.
- 데이터베이스 관련 코드에 대해서 유연하다.
- 빠른 개발이 가능하다.
✔️ 단점
- 높은 러닝 커브
- 객체지향 설계 사상이 반영되야한다.
- 특정 DB의 강력함을 쓸 수 없다.
'Web > Spring' 카테고리의 다른 글
[Spring] Spring의 DB 접근 기술 (0) | 2022.08.23 |
---|---|
[Spring] Spring의 핵심 : IoC, DI (23.05.16 updated) (0) | 2022.08.23 |
[Spring] Spring vs Spring Boot (2) (0) | 2022.08.23 |
[Spring] Spring vs Spring Boot (1) (0) | 2022.08.19 |
[Spring] Spring Data JPA (2) (0) | 2022.08.13 |
댓글