ORM
- JAVA의 데이터 클래스와 관계현 데이터베이스의 테이블을 매핑
- 객체지향 프로그래밍과 관계형 데이터베이스의 차이로 발생하는 제약사항을 해결해주는 역활을 수행
- 대표적으로 JPA가 있음(Persistent API)
ORM의 장점
- SQL쿼리가 아닌 직관적인 코드로 데이터를 조작할 수 있음
- 개발자가 보다 비즈니스 로직에 집중할 수 있음
- 재사용 및 유지보수가 편리
-ORM은 독립적으로 작성되어 있어 재사용이 가능
-매핑정보를 명확하게 설계하기 때문에 따로 데이터베이스를 볼 필요가 없음
- DBMS에 대한 종속성이 줄어듬
-DBMS를 교체하는 작업을 비교적 적은 리스크로 수행 가능
JPA
- JPA는 Java Persistance API의 줄임말이며, ORM과 관련된 인터페이스의 모음이다.
- JAVA진영에서 표준 ORM으로 채택되어 있음
- ORM이 큰 개념이라고 하면, JPA는 더 구체화 시킨 스펙을 포함하고 있음
Hibernate
- ORM Framework 중 하나
- JPA의 실제 구현체 중 하나이며, 현재 JPA 구현체 중 가장 많이 사용됨