5장에서 언급한 내용이 대부분이다.
다대다 연결은 사용하지 않는데, 왜냐하면 실무에서는 컬럼이 추가될 수도 있는데 이럴 경우 ManyToMany를 사용할 수 없다. 추가한 컬럼들을 매핑할 수 없기 때문이다.
따라서 중간다리 역할을 하는 엔티티를 만들고 다대다 관계를 일대다, 다대일 관계로 만든다.
- 복합 기본 키
- 복합키는 별도의 식별자 클래스로 만들어야 한다.
- equals와 hashCode 메소드를 구현해야 한다.
- 기본 생성자가 있어야 한다.
- 식별자 클래스는 public 이어야 한다.
- @IdClass를 사용하는 방법 외에 @EmbeddedId를 사용하는 방법도 있다.
위와 같이 복합키를 사용하면 ORM 매핑에서 처리할 일이 상당히 많아진다.
복합키를 사용하지 않고 간단히 다대다 관계를 구성하는 방법을 알아보자.
다대다: 새로운 기본 키 사용
- 데이터베이스에서 자동으로 생성해주는 대리키를 사용하고 참조값을 FK로 사용한다.
'자바 ORM 표준 JPA 프로그래밍' 카테고리의 다른 글
8장_프록시와 연관관계 정리 (0) | 2022.01.11 |
---|---|
7장_고급 매핑 (0) | 2022.01.10 |
5장_연관관계 매핑 기초 (0) | 2022.01.10 |
4장_엔티티 매핑 (0) | 2022.01.06 |
3장_영속성 관리 (0) | 2022.01.05 |