본문 바로가기

자바 ORM 표준 JPA 프로그래밍

6장_다양한 연관관계 매핑

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