JPA와 MyBatis의 차이

yshjft·2023년 2월 25일
0

MyBatis

목록 보기
1/3

SQL Mapper와 ORM은 개발자가 JDBC Programming(인간 매퍼)을 하지 않도록 기능을 제공한다.

SQL MAPPER

  • Object와 SQL의 필드를 매핑하여 데이터를 객체화 하는 기술
  • 객체와 테이블 간의 관계 매핑 아님
  • SQL 문을 직접 작성하고 쿼리 수행 결과를 어떠한 객체에 매핑할지 바인딩하는 방법
  • DBMS에 종속적인 문제

예시

  • MyBatis
    • SQL을 직접 작성하여 쿼리 수행 결과를 객체와 매핑
    • 쿼리문을 xml로 분리 가능 → 가독성 향상
    • 복잡한 쿼리문 작성 가능
    • 데이터 캐싱 기능으로 성능 향상
    • 객체와 쿼리문 모두 관리해야함, CRUD 메소드를 직접 다 구현해야함.

ORM

  • Object와 DB 테이블을 매핑하여 테이블을 객체지향적으로 사용하게 해주는 기술
  • 개발자가 반복적인 SQL을 직접 작성하지 않음
  • DBMS에 종속적이지 않음
  • 복잡한 쿼리의 경우 JPQL, SQL Mapper를 혼용하여 사용 가능

참고 내용

profile
꾸준히 나아가자 🐢

0개의 댓글