저번 포스팅에서 다뤘듯이 JPA는 Spring과 다른 개념입니다!
이제 JPA 의 동작 원리에 대해 설명드리도록 하겠습니다!
JAVA에서 제공하는 API / 자바 어플리케이션에서 RDB를 사용하는 방식을 정의한 인터페이스 입니다.
쉽게 말해서 자바에서 연관형 데이터베이스를 다루는 인터페이스!
자바 ORM 기술에 대한 표준 명세 (스프링 X)
데이터를 자바 안에서 객체지향적으로 관리 > 개발자가 비즈니스 로직에 집중할 수 있다.
이 그림을 이해해봅시다. JPA의 위치가 어디죠? JAVA Application 과 JDBC API 사이에 있습니다.
JPA -> JPA 내부에서 JDBC API 사용 -> SQL문 호출 -> DB 통신
예시를 통해서 더 자세히 이해해봅시다.
명령어의 동작방식을 이해하니 JPA가 무슨 기능을 하는지 이해하셨죠??
객체-관계 매핑 - 자바 클래스와 DB 테이블을 매핑
SQL 매핑하지 않고 자동 생성 (JPA, Hibernate)
위 ORM 에서는 DB데이터를 매핑해준다는 것과 달리 SQL Mapper 에서는 SQL을 매핑해줘서 SQL로 DB를 조작함.(Mybatis, jdbcTemplate)
출처: https://rokroks.tistory.com/50 [코딩하는 노든씨]