JAVA
에서 제공하는 API이다. SQL
<- mapping -> Object 필드DB 데이터
<- mapping -> Object 필드Spring-Data-JPA -> Hibernate -> JPA
이다.JPA
- Member 엔티티를 분석한다.
- INSERT SQL을 생성한다.
- JDBC API를 사용하여 SQL을 DB에 날린다.
JPA
- 엔티티의 매핑 정보를 바탕으로 적절한 SELECT SQL을 생성한다.
- JDBC API를 사용하여 SQL을 DB에 날린다.
- DB로부터 결과를 받아온다.
- 결과(ResultSet)를 객체에 모두 매핑
쿼리를 JPA가 만들어 주기 때문에 Object와 RDB 간의 패러다임 불일치를 해결할 수 있다.
JPA 구현체의 한 종류
JPA는 DB와 자바 객체를 매핑하기 위한 인터페이스(API)를 제공하고 JPA 구현체(하이버네이트)는 이 인터페이스를 구현한 것이다.
Hibernate가 SQL을 직접 사용하지 않는다고 해서 JDBC API를 사용하지 않는다는 것은 아니다.
가치 있는 정보 공유해주셔서 감사합니다.