JPA란 무엇인가?

Drumj·2022년 8월 16일
0

JPA (Java Persistence API)

  • 현재 자바 진영의 ORM 기술 표준으로, 인터페이스의 모음 이라고 한다.
    - 즉, 실제로 동작하는 것이 아님.
    - JPA 인터페이스를 구현한 대표적인 오픈소스가 Hibernate 라고 할 수 있다.
    * Hibernate? : ORM 프레임워크, Open Source SW

ORM(Object-Relational Mapping)

  • 객체 관계 매핑이라는 뜻으로 객체는 객체대로 설계하고, 관계형 데이터베이스는 관계형 데이터베이스대로 설계한다.
  • ORM 프레임워크가 중간에서 매핑해준다.

JPA의 동작 과정

  • JPA는 애플리케이션과 JDBC 사이에서 동작한다. 개발자가 직접 JDBC API를 사용하지 않는다는 뜻.
    * 개발자가 JPA를 사용하면, JPA 내부에서 JDBC API를 사용하여 SQL을 호줄하여 DB와 통신한다.

JPA 특징

  • SQL문이 아닌 Method를 통해 DB를 조작할 수 있다. 개발자는 객체모델을 이용하여 비즈니스 로직을 구성하는데만 집중할 수 있다.
  • 부수적인 코드가 줄어들어, 각종 객체에 대한 코드를 별도로 작성하여 코드의 가독성을 높일수 있다.
  • 매핑하는 정보가 Class로 명시 되었기 때문에 ERD를 보는 의존도를 낮출 수 있고 유지보수 및 리팩토링에 유리하다.
  • Object와 RDB 간의 패러다임 불일치를 해결 할 수 있다.

참고자료

나의 한 줄

DB를 사용할 때 쿼리를 직접 작성하지 않고 간단한 코드 몇 줄로 대신 할 수 있는 것이라고 생각하고 있었는데 어느정도는 맞는 생각인 것 같다. 심화 내용들은 더 읽어보면 좋을 것 같다.

0개의 댓글