728x90

jpa 23

[JPA] 연관관계 매핑 기초

김영한님의 자바 ORM 표준 JPA 프로그래밍 - 기본편 정리 1. 단방향 연관관계 - 객체를 테이블에 맞춰 모델링(연관관계가 없는 객체) - 객체를 테이블에 맞춰 데이터 중심으로 모델링하면, 협력 관계를 만들 수 없음 (1)테이블은 외래키로 조인하여 연관된 테이블을 찾는다. (2) 객체는 참조를 사용해서 연관된 객체를 갖는다. - 객체 지향 모델링(객체 연관 관계 사용) - 객체와 테이블의 차이는 이렇게 해결 가능 // Member와 Team 클래스가 Entity 애노테이션을 붙였다고 가정 @Entity public class Member { // 다른 필드 생략 /* @Column(name="TEAM_ID") private Long teamId; 위는 객체를 테이블에 맞추어 모델링 한 것인데 협력 관..

[JPA] 기본 엔티티 매핑

김영한님의 자바 ORM 표준 JPA 프로그래밍 - 기본편 정리 1. 객체와 테이블 매핑 - 객체와 테이블 매핑 : @Entity, @Table - 필드와 컬럼 매핑 : @Column - 기본 키 매핑 : @Id - 연관관계 매핑 : @ManyToOne, @JoinColumn 2. @Entity - @Entity가 붙은 클래스는 JPA가 관리 - JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수 - JPA 스펙상 파라미터가 없는 public 또는 protected 기본 생성자 필수 - 기본 생성자 필수 - final 클래스, enum, interface, inner 클래스에는 사용 불가능 - DB에 저장하고 싶은 필드는 final 사용 불가 3. @Table @Entity @Table(name..

[JPA] 기본 영속성 관리 - 내부 동작 방식

김영한님의 자바 ORM 표준 JPA 프로그래밍 - 기본편 정리 1. JPA에서 가장 중요한 2가지 - 객체와 관계형 데이터메이스 매핑하기 - 영속성 컨텍스트 2. 엔티티 매니저 팩토리와 엔티티 매니저 - EntityManager는 DB에 붙기 위해 커넥션 풀을 사용 3. 영속성 컨텍스트 - JPA를 이해하는데 가장 중요한 용어 - 엔티티를 영구 저장하는 환경이라는 뜻 - EntityManager.persis(entity); -> 저장(영속석 컨텍스트를 통해서 엔티티를 영속화 한다.) 4. 엔티티의 생명주기 - 비영속(new/transient) 영속성 컨텍스트와 전혀 관계가 없는 새로운 상태 - 영속(managed) 영속성 컨텍스트에 관리되는 상태 - 준영속(detached) 영속성 컨텍스트에 저장되었다가..

728x90