반응형

JPA 란?

  • Java Persistence Api의 약자로 자바 진영의 ORM 기술 표준
  • JPA는 인터페이스이므로 구현체가 필요함
  • 대표적인 라이브러리(구현체) : Hibernate

ORM 이란?

  • Object Relational Mapping의 약자로 객체와 관계형 DB를 매핑

SQL Mapper 란?

  • 객체와 SQL의 필드를 매핑하여 데이터를 객체화하는 기술
  • 대표적인 라이브러리 : MyBatis, JdbcTemplate

ORM VS SQL Mapper

  • SQL Mapper은 쿼리를 직접 작성해야 하지만 ORM은 직접 작성하지 않아도 됨
  • SQL Mapper은 DBMS에 종속적이지만 ORM은 DBMS에 종속적이지 않고 객체 중심의 개발 가능
  • 하지만 복잡한 쿼리를 해결할 때는 SQL Mapper가 더 용이하고 ORM이 학습하는데는 더 어려움

JDBC 란?

  • Java DataBase Connectivity의 약자로 DB의 종류에 상관없이 Java와 DB를 연결시켜줌

JPA가 DB에 접근하는 과정

  • User라는 객체를 만들고 이 안에 name, age, email 등의 변수들이 있다고 가정
  • 이것을 DB에 등록해야 함
  • JPA가 User 객체를 관계형 DB에 매핑
  • JDBC가 DBMS에 맞는 쿼리를 자동으로 만들고 뿌려줌
  • DB에서는 이 쿼리를 받아 실행
  • DB에 접근 (CRUD 가능)
반응형

↓ 클릭시 이동

복사했습니다!