728x90
반응형
JPA를 공부하기에 앞서 ORM에 대해 알아야 한다.
ORM이란?
Object Relational Mapping의 약자로 단어에서 보듯 객체지향과 관련이 있다.
객체지향을 자동으로 관계형 데이터베이스에 맞게 처리해주는 기법이라고 생각하면 이해가 편할 것 같다.
ORM은 '객체지향'의 구조가 '관계형 데이터베이스'와 유사하다는 점에서 시작했다.
책을 읽으며 이해한대로 정리해보았다.
객체지향 | 관계형 데이터 베이스 | 비고 |
클래스 | Table | |
인스턴스 | Row(레코드 혹은 튜플) | 객체가 데이터+메서드라는 의미라면 Row는 데이터만을 의미 |
참조 | 관계 |
JPA란?
JPA는 Java Persistence API의 약자로 ORM을 Java 언어에 맞게 사용하는 '스펙'이다.
ORM이 좀 더 상위 개념이 되고, JPA는 Java에 국한된 개념으로 볼 수 있다.
여러 프레임워크가 있지만 가장 유명한 것은 'Hibernate'이다.
Hibernate?
Hibernate는 '오픈소스'로 ORM을 지원하는 프레임워크다.
다른 프레임워크도 그렇지만 Hibernate는 단독으로 프로젝트에 적용이 가능한 독립된 프레임워크다.
Spring Data JPA가 Hibernate를 스프링 부트에서 쉽게 사용 할 수 있는 추가적인 API를 제공한다.
728x90
반응형
'스프링' 카테고리의 다른 글
[Spring] Pageable 인터페이스 사용해보기 (0) | 2023.01.08 |
---|---|
[Spring] JpaRepository 사용법 (0) | 2023.01.08 |
엔티티 클래스(Entity Class) (0) | 2023.01.08 |
RedirectAttributes (0) | 2021.05.06 |
PropertyPlaceHolderConfigure (0) | 2021.04.08 |