연관관계 매핑
[JPA] 다양한 연관관계 매핑
인프런 자바 ORM 표준 JPA 프로그래밍 - 기본편 강의 내용 정리 다양한 연관관계 매핑 다대일(N:1, @ManyToOne) ⬌ 일대다(1:N, @OneToMany) 일대일(1:1, @OneToOne) 다대대(N:M @ManyToMany) 다대일(@ManyToOne) - 단방향 가장 많이 사용하는 연관관계이며, 반대는 일대다이다. 다대일(@ManyToOne) - 양방향 FK가 있는 쪽이 연관관계의 주인 양쪽을 서로 참조하도록 개발 일대다(@OneToMany) - 단방향 일대다 단방향은 일이 연관관계의 주인 테이블 일대다 관계는 항상 다쪽에 FK가 있음 객체와 테이블의 차이 때문에 반대편 테이블의 외래 키를 관리하는 특이한 구조 @JoinColumn을 꼭 사용해야 함. 그렇지 않으면 JoinTable방..
[JPA] 연관관계 매핑 기초
인프런 자바 ORM 표준 JPA 프로그래밍 - 기본편 강의 내용 정리 연관관계 매핑이란, 객체의 참조와 테이블의 외래 키를 매핑하는 것을 말한다. 연관관계는 다음 3가지를 고려해야한다. 1. 방향(Direction) 방향에는 단방향과 양방이 있다. 객체는 참조용 필드를 가지고 있는 객체만 연관된 객체를 조회할 수 있으므로 방향이 존재한다. 두 객체가 서로 참조하는 관계를 양방향 관계, 한 객체에서 다른 객체만 참조하는 관계를 단방향 객체라 한다. class A { B b; } class B { A a; } 테이블은 외래 키 하나로 양쪽으로 조인이 가능하다. 따라서 테이블은 방향이 없다고 볼 수도 있고, 항상 양방향이라 할 수 있다. SELECT * FROM MEMBER M JOIN TEAM T ON M...