[자바 ORM표준 JPA 프로그래밍] 5-7장, 162 - 260
2021. 12. 6. 01:06
728x90
Q. mappedBy 속성이 필요한 이유?
: 테이블은 외래키 하나로 두 테이블의 연관관계를 관리, 객체는 단방향으로 매핑하면 참조 하나사용,
양방향이면 참조가 둘이다. 테이블과 객체사이의 차이가 발생하게 된다.
그래서 두 객체의 연관관계 중 하나를 정해서 테이블의 외래키를 관리하는 연관 관계 주인을 설정해야 한다.
주인이 아니면 mappedBy속성을 사용해 연관관계의 주인을 지정한다.
Q. 일대다 단방향은 되는데 일대일 단방향(대상 테이블에 외래키)는 왜 안될까?
나도 궁금했는데 인프런 질문에 벌써 질문이 올라와 있었따!
Q. 다대다를 사용하지 않는 이유?
: 관계형 데이터베이스는 정규화된 테이블 2개로 다대다 관계를 표현할 수 없다. 일대다,
다대일 관계로 풀어내는 연결 테이블이 필요.
Q. (다대다 양방향) 연결 테이블에 컬럼을 추가하면 @ManyToMany 를 사용할 수 없다 왜??
: 중간 테이블은 엔티티가 아닌 숨겨진 테이블이다. 추가한 컬럼들을 매핑할 수 없음. 한계가 있다.
728x90
'BOOK' 카테고리의 다른 글
[함께 자라기 - 애자일로 가는길] (0) | 2022.02.11 |
---|---|
[테스트 주도 개발] 15 - 17장, 137 - 160 (0) | 2021.12.02 |
[자바 ORM표준 JPA 프로그래밍] 3-4장, 89 - 161 (0) | 2021.12.02 |
[테스트 주도 개발] 14장 128 - 136 (0) | 2021.11.30 |
[테스트 주도 개발] 10 - 13 장, 93 - 128 (0) | 2021.11.27 |