
주의 • 엔티티 매니저 팩토리는 하나만 생성해서 애플리케이션 전체에 서 공유 • 엔티티 매니저는 쓰레드간에 공유X (사용하고 버려야 한다). • JPA의 모든 데이터 변경은 트랜잭션 안에서 실행 JPQL 소개 • 가장 단순한 조회 방법 • EntityManager.f

@Entity가 붙은 클래스는 JPA가 관리, 엔티티라 한다. • JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수• 주의final 클래스, enum, interface, inner 클래스 사용 X기본 생성자 필수(파라미터가 없는 public 또는 prot

이전 데이터 중심 매핑에서 객체 중심의 매핑을 위해 연관관계 매핑을 알아보자.식별자로 다시 조회, 객체 지향적인 방법은 아니다.테이블은 외래 키로 조인을 사용해서 연관된 테이블을 찾는다. 객체는 참조를 사용해서 연관된 객체를 찾는다.테이블과 객체 사이에는 이런 큰 간격
관계형 데이터베이스는 상속 관계X슈퍼타입 서브타입 관계라는 모델링 기법이 객체 상속과 유사상속관계 매핑: 객체의 상속과 구조와 DB의 슈퍼타입 서브타입 관계를 매핑각각테이블로변환 -> 조인전략통합 테이블로 변환 -> 단일 테이블 전략서브타입 테이블로 변환 -> 구현 클

이를 해결하기 위해서 즉시 로딩이 아닌 지연 로딩을 사용해야하는데 이는 프록시를 이해하고 있어야함• em.find() vs em.getReference()• em.find(): 데이터베이스를 통해서 실제 엔티티 객체 조회• em.getReference(): 데이터베이스

엔티티 타입• @Entity로 정의하는 객체• 데이터가 변해도 식별자로 지속해서 추적 가능• 예)회원 엔티티의 키나 나이값을 변경해도 식별자로 인식 가능값 타입• int, Integer, String처럼 단순히 값으로 사용하는 자바 기본 타입이나 객체• 식별자가 없고