<aside>
😊 JPA와 API 반복적인 CRUD 작업을 할 때 꼭 알아야하는 개념을 정리한 페이지입니다 :)
</aside>
JPA
- Java
- Persistence
- Application Programing interface
- 자바 프로그램을 할 때 영구적으로 데이터를 저장하기 위해서 필요한 인터페이스
API
애플리케이션 (A) -> 프로그램
프로그래밍 (P) -> 프로그래밍
인터페이스 (I) -> 인터페이스
인터페이스 : 상하관계가 존재하는 약속
- 여기서 영속성( Persistence)은 데이터를 생성한 프로그램의 실행이 종료되더라도 사라지지 않는 데이터의 특성을 의미
- 영속성은 파일 시스템, 관계형 데이터베이스 혹은 객체 데이터베이스 등을 활용하여 구현
- 영구적으로 기록할 수 있는 환경을 제공하는 API
- JPA는 ORM 기술
- ORM은 Object Relational Mapping
- 내가 클래스를 만들어서 실행을 하면 그 데이터베이스에 자동으로 실행되게 하는 기법을 ORM이라고 함
- JPA는 반복적인 CRUD 작업을 생략하게 해줌
<aside>
❗ 반복적인 CRUD 작업이란
</aside>
CREATE - INSERT
READ - SELETE
UPDATE - UPDATE
DELETE - DELETE
- JPA는 영속성 컨텍스트를 가지고 있음
- JPA는 DB 와 OOP 의 불일치성을 해결하기 위한 방법론을 제공
- JPA는 OOP 의 관점에서 모델링을 할 수 있게 해줌
- 방언처리가 용이하여 Migration 하기 좋음. 유지보수에도 좋음