우리가 스프링부트로 프로젝트를 진행하다 보면, jpa / hibernate/ spring data jpa 를 마주한다. 우리는 위 세가지를 통해 데이터를 저장하고 조회하고 삭제하고 수정할 수 있다. JPA (Java Persistence API)JPA는 자바 진영의 표준 ORM 명세이다. 인터페이스와 규칙만 정의한 것이지 실제 구현체는 아니다. JPA 스펙은 데이터베이스와 자바 객체를 매핑하는 방식을 표준화하고, 어떤 메서드가 있어야 하고 어떻게 동작해야 하는지를 정의한다.쉽게 말해 JPA는 "이렇게 해야 한다"는 규칙 모음 이라고 생각하면 쉽다.HibernateHibernate는 JPA를 구현한 구체적인 ORM 프레임워크이다. JPA 표준을 따르면서도 Hibernate만의 추가 기능과 최적화를 제공한다..