본문 바로가기
개발일지/일간회고 (TIL)

JPA(Java Persistence API)

by 윤승임 2022. 12. 17.

JPA(Java Persistence API)

JPA (Java Persistence API)는 Java 기반의 ORM(Object-Relational Mapping) 프레임워크이다.

자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스

JPA는 특정 기능을 하는 라이브러리가 아니라 말 그대로 인터페이스

자바 어플리케이션에서 관계형 데이터베이스를 어떻게 사용해야 하는지를 정의하는 한 방법일 뿐

ORM은 일반적으로 객체지향 프로그래밍 언어에서 사용하는 객체들을 데이터베이스에 저장할 수 있게 해주는 기술이다. JPA는 이러한 ORM 기술을 정의한 기준이기도 하다.

JPA를 사용하면 Java 객체를 사용해서 데이터베이스에 접근할 수 있게 해준다. 예를 들어, Java 객체로 정의된 엔티티(Entity)를 생성, 조회, 수정, 삭제할 수 있고, 이를 이용해서 여러 개의 테이블과 조인해서 쿼리를 실행할 수 있다.

그리고 JPA 어플리케이션을 작성하기 위해서는 JPA 어노테이션(annotation)과 인터페이스를 이용해야 한다.

쿼리를 자동으로 만들어준다.

어플리케이션 계층에서 sql 의존성을 줄여서 번거로운 작업을 단축시켜준다.

패러다임의 불일치를 해결해준다.

방언들도 지원해준다.

JPA는 객체와 관계형 데이터베이스 사이의 자동 매핑을 제공해주는데 덕분에 개발자가 객체와 관계형 데이터베이스 사이의 작업을 수행할 때 코드 작성을 최소화할 수 있게 해준다.

 

https://suhwan.dev/2019/02/24/jpa-vs-hibernate-vs-spring-data-jpa/