[Medium] JPA vs Hibernate vs Spring Data JPA



• Java에서 데이터 지속성은 JDBC API에서 시작하여 Hibernate, JPA, Spring Data JPA와 같은 더 추상화되고 표준화된 메커니즘으로 발전해왔으며, 이들 기술은 각각의 장단점과 사용 목적에 따라 선택할 수 있다.
• Hibernate는 가장 인기 있는 Java ORM 프레임워크 중 하나로, 주석을 사용한 매핑, 세션 인터페이스를 통한 CRUD 작업 및 트랜잭션 관리, 캐싱 및 배칭을 통한 성능 최적화 등의 기능을 제공하며, JPA 표준을 준수하면서도 고유한 기능을 유지하고 있다.
• Hibernate에서 EclipseLink와 같은 다른 ORM 도구로 전환할 때, 두 프레임워크가 JPA 표준을 준수하면 전환이 더 쉬워지지만, 각 프레임워크의 고유한 구현이 다를 수 있습니다. JPA는 EntityManager와 JPQL을 통해 지속성 프로세스를 관리합니다.
• Spring Data JPA는 Spring 애플리케이션에서 데이터베이스 작업의 복잡성을 줄이기 위해 JpaRepository를 사용하여 상용구 코드를 줄이고, CRUD 작업, 정렬, 페이징 등의 기능을 기본적으로 제공합니다. Hibernate, JPA, Spring Data JPA는 각자의 목적에 따라 함께 사용할 수 있습니다.

북마크
공유하기
신고하기