JPA 개요

개발하는 도비·2023년 4월 22일

JPA

목록 보기
1/13
post-thumbnail

JPA 및 이전 기술 특징

  • 순수 JDBC
    • sql과 JDBC api를 직적 작성해야했음.
  • JdbcTemplate
    • JDBC api는 줄었지만 sql은 직접 작성.
  • JPA(Java Pesistence API)
    • sql조차 작성할 필요가 없어짐

객체와 관계형 데이터베이스 차이

  • 상속
    • 관계형 데이터베이스는 상속이라는 개념이 없음.
    • 비슷한 구조로 Table 슈퍼타입 서브타입 관계
      • 부모 타입 table과 자식 타입 table로 join으로 값을 가져옴.
      • 하지만 각각의 table에 작업을 하기 위해 여러개의 sql의 문이 필요함.
  • 연관관계
    • 객체는 참조 사용
      • {객체}.{메소드/변수}
    • 데이터베이스는 외래키를 사용
      • join
  • 데이터 타입
    • 객체 : 참조를 기반으로 하기에 객체를 포함되도록 모델링
    • 데이터베이스 : 외래키를 기반으로 하기에 키 값을 가지도록 모델링
  • 데이터 식별 방법
    • 객체 : 객체는 자유룝개 객체 그래프를 탐색할 수 있어야 함.
    • 데이터베이스 : 처음 실행하는 sql에 따라 탐색 범위 결정

결론

  • 객체지향적인 모델링을 할 수록 매핑 작업이 늘어나기에 SQL중심 개발과의 객체지향 패러다임 불일치를 해결하기 위해 나온 결과가 JPA이다.

참조

  • 인프런 : 자바 ORM 표준 JPA 프로그래밍 - 기본편
  • 링크
profile
도비의 양말을 찾아서

0개의 댓글