ORM
- 객체와 DB사이의 관계를 연결해 주는것을 ORM이라고 한다.
- ORM을 통해 정의한 객체를 사용하는 것으로 자연스럽게 DB에 연결해 사용할 수 있다.
- 만약 ORM없이 직접 Data를 처리한다면 SELECT Query를 통해 받은 결과값을 하나하나 매핑해서 사용해야한다.
JPA(Java Assistant Api)
- 현재 JAVA의 ORM으로 채택되어 있다.
- Interface로 작성 되어 있고 Hibernate, Eclipse Link와 같은 구현체들이 있다.
Hibernate
- JPA의 구현체들을 모아 놓은 것
- 다른 구현체들도 있지만 default로 Hibernate가 사용된다.
Spring Data JPA
- Spring Hibernate를 더 간편히 사용 할 수 있도록 추상 객체를 한번 더 감싸 만들어 놓은 것
- 프로젝트를 생성할 때 Spring Data JPA의존성을 추가하면 사용 할 수 있다.
- 보통 Test DB로 사용하기 위해 H2Database도 추가한다.