- 인터페이스의 모음
- JPA 2.1 표준 명세를 구현한 3가지 구현체
- 구현체 : 하이버네이트, EclipseLink, DataNucleus
쿼리를 직접 작성할 필요가 없음.
필드만 추가하면 유지보수 가능
Album album = jpa.find(Album.class, albumId); // JPA가 JOIN 실행
member.setTeam(team);
jpa.persist(member);
Member member = jpa.find(Member.class, memberId);
Team team = member.getTeam();
member.getTeam(); // 자유로운 객체 그래프 탐색
// member1과 member2는 같음
Member member1 =jpa.find(Member.class, memberId);
Member member2 =jpa.find(Member.class, memberId);
1차 캐시와 동일성 보장
트랜잭션을 지원하는 쓰기 지연 - INSERT
지연 로딩과 즉시 로딩
객체와 RDB 두 기둥위에 있는 기술
객체와 RDB의 데이터를 자동으로 매핑해줌