728x90
반응형
복합키 설정 방법은 크게 두가지가 있음
1. @EmbeddedId 어노테이션 사용
2. @IdClass 어노테이션 사용
@EmbeddedId 어노테이션 사용
복합키를 가진 엔티티 클래스에서는 복합키를 위한 별도의 클래스를 만들어야 함
이 클래스에 복합키를 구성하는 필드들을 선언하고, @Embeddable 어노테이션을 붙여줌
그리고 이 클래스를 엔티티 클래스에서 @EmbeddedId 어노테이션을 사용하여 참조
예시
public class OrderProduct {
@EmbeddedId
private OrderProductId id;
@Embeddable
public class OrderProductId implements Serializable {
@Column(name = "order_id")
private Long orderId;
@Column(name = "product_id")
private Long productId;
}
}
@IdClass 어노테이션 사용
이 방법은 복합키를 구성하는 필드를 엔티티 클래스 내에 바로 선언하는 방식
예시
@Entity
@IdClass(OrderProductId.class)
public class OrderProduct {
@Id
private Long orderId;
@Id
private Long productId;
}
반응형
'프로그래밍 > JPA' 카테고리의 다른 글
[JPA] Repository find 와 entityManager로 조회하는 것의 차이점 (0) | 2023.04.11 |
---|---|
[JPA] JPA Entity Id를 String 으로 설정하기 (0) | 2023.04.10 |
[JPA] Order by multiple Columns (0) | 2023.02.24 |
[JPA] ORM이란, JPA 사용 이유? (0) | 2023.01.10 |
[JPA] JPA 날쿼리 사용하기(nativeQuery = true) (0) | 2022.12.29 |