[JPA] JPA, Hibernate, Spring Data JPA의 차이점
[JPA] JPA와 Hibernate 그리고 Spring Data JPA
학습 페이지
JPA (Java Persistance API)
<aside>
💡 JPA (Java Persistance API)는 Java 에서 ORM 을 사용하기 위한 표준을 정해서, 인터페이스로 명시에놓은 것을 의미한다.
</aside>
Java에서 ORM 기술을 구현하려면, JPA 표준 인터페이스를 구현해야 된다.
ORM (Object-Relation Mapping)
JPA 표준명세 버전 연혁은 다음과 같다.
- 2006년 → JPA 1.0(JSR 220): 초기버전, 복합 키와 연관관계 기능 부족
- 2009년 → JPA 2.0(JSR 317): 대부분의 ORM 기능을 포함, JPA Criteria 추가
- 2013년 → JPA 2.1(JSR 338): 스토어드 프로시저 접근, 컨버터(Converter), 엔티티 그래프 기능 추가
- 2017년 → JPA 2.2: 스펙출시
- 2020년 → Jakarta Persistence API 3.0 : Oracle이 Java EE를 오픈소스화 하면서 JPA → Jakarta Persistence 로 이름이 변경됨