본문 바로가기
스프링/JPA

1.JPA란 무엇인가?

by lroot 2023. 12. 26.
728x90
반응형

JPA란 Java Persistence API는 자바 진영의 ORM 기술 표준이다.

애플리케이션과 JDBC 사이에서 동작한다.

ORM은 Object-Realational-Mapping은 이름 그대로 객체와 관계형 데이터베이스를 매핑한다는 뜻이다.

ORM 프레임워크는 단순히 SQL을 개발자 대신 생성해서 데이터베이스에 전달해주는 것뿐만 아니라 다양한 패러다임의 불일치 문제들도 해결해준다.

 

JPA는 자바 ORM 기술에 대한 API 표준 명세이다. 인터페이스를 모아둔 것이다.

따라서 JPA를 사용하려면 JPA를 구현한 ORM 프레임워크를 선택해야 한다. 이 중 하이버네이트가 가장 대중적이다.

 

JPA를 사용해야 하는 이유

1.생산성

지루하고 반복적인 일을 대신해준다. 데이터베이스 설계 중심의 패러다임을 객체 설계 중심으로 역전시킬 수 있다.

2.유지보수

개발자가 작성해야 했던 SQL과 JDBC API 코드를 JPA가 대신 처리해주므로 유지보수해야 하는 코드 수가 줄어든다.

3.패러다임의 불일치 해결

JPA는 상속, 연관관계, 객체 그래프 탐색, 비교하기와 같은 패러다임의 불일치 문제를 해결해준다.

4.성능

애플리케이션과 데이터베이스 사이에 계층이 하나 더 있으면 최적화 관점에서 시도해 볼 수 있는 것들이 많다.

5.데이터 접근 추상화의 벤더 독립성

애플리케이션과 데이터베이스 사이에 추상화 된 데이터 접근 계층을 제공해서 애플리케이션이 특정 데이터베이스 기술에 종속되지 않도록 한다.

6.표준

표준을 사용하면 다른 구현 기술로 손쉽게 변경할 수 있다.

'스프링 > JPA' 카테고리의 다른 글

3.JPA 시작(2)  (1) 2023.12.27
2.JPA 시작(1)  (0) 2023.12.27

댓글