minju26 2023. 8. 22. 17:23

JPA

  • Java Persistence API
    Java의 데이터를 비휘발성인 하드 디스크의 DBMS에 저장할 수 있도록 하는 환경
    • Persistence : 데이터를 생성한 프로그램의 실행이 종료되더라도 사라지지 않는 데이터의 특성
    • API(Application Programming Interface)
      - Interface : 상하관계가 존재하는 약속
        (cf. 프로토콜 : 동등한 관계에 있어 서로 동의한 약속)

  • ORM (Object Relational Mapping)
    Object를 DB에 연결하는 방식
    • Java는 Class를 사용하고, 관계형 DB는 테이블을 사용하기 때문에 객체 모델과 관계형 DB간 불일치가 발생함
    • JPA의 인터페이스에 의해 클래스를 바탕으로 DB 테이블이 자동으로 생성

  • 반복적인 CRUD 생략
    Create(INSERT), Read(SELECT), Update(UPDATE), Delete(DELETE)


  • 영속성 컨텍스트 (Persistence Context)
    JAVA --- 영속성 컨텍스트 --- DB
    엔티티 영구 저장 환경, 애플리케이션과 데이터베이스 사이에서 객체를 보관하는 가상의 데이터베이스 같은 역할을 하는 논리적인 개념
    • Context : 대상에 대한 모든 정보

  • OOP 관점에서 모델링을 할 수 있음
    상속, 컴포지션, 연관관계

::참고::

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%EA%B0%9C%EB%85%90%EC%A0%95%EB%A6%AC/dashboard