본문 바로가기

JPA

JPA 사용 이유

1. SQL 중심적인 개발의 문제점

  • 반복되는 CURD
  • **패러다임의 불일치**
    • 객체 vs 관계형 데이터베이스
    • 객체를 관계형 데이터베이스에 저장
    • 탐색시 처음 실행하는 SQL에 따라 탐색 범위가 지정
    • select M.*, T.*
      from Member M
      join Team T on M.id = T.id
      
      member.getTeam();  //OK
      member.getOrder(); //null 조인 되지 않은 값은 가져올 수 없음
    • 엔티티 신뢰 문제
    • 모든 객체를 미리 로딩할 수는 없음 -> 상황에 따라 동일한 회원 조회를 여러번 진행

 

2. JPA 사용 이유

  • 생산성 -> CURD 보다 간단
  • 유지보수 용이
  • **패러다임의 불일치 해결**
  • 동일한 트랜잭션에서 조회한 엔티티는 같음을 보장
  • 성능 최적화
    • 1차캐시, 동일성 보장
    • 지연로딩 / 즉시로딩
    • 쓰기지연

 

 

 

 

출저 : 자바 ORM 표준 JPA 프로그래밍 - 기본편 / 김영한

'JPA' 카테고리의 다른 글

연관관계 매핑  (0) 2023.01.04
엔티티 매핑  (0) 2022.12.27
플러시  (0) 2022.12.22
영속성 컨텍스트  (0) 2022.12.20
JPA / 엔티티  (0) 2022.10.06