0
나는이 3 개의 엔티티 E1, E2, E3을 가지고있다. E3 클래스에 추가 필드가있는 다른 테이블을 가리키는 2 개의 기본 키가 있음을 알아야합니다.두 개의 다른 테이블을 가리키는 2 개의 ID를 가진 클래스에 대한 jpa 2.0 주석
@Entity
public class E1 extends RAP{
/**
*
*/
}
@Entity
public abstract class E2{
/**
*
*/
}
E3 클래스에는 e1과 e2를 가리키는 2 개의 기본 키가 있습니다.
@Entity
public class E3 extends RAP{
@Id
@ManyToOne
@JoinColumn(name = "e1_id")
private E1 e1;
@Id
@ManyToOne
@JoinColumn(name = "e2_id")
private E2 e2;
private Double myfield1;
private Double myfield2;
}
그러나 문제가 있습니다. 이 같은 ...
This class has a composite primary key. It must use an ID class.
그래서 나는 또한, 여러 컬럼을 통해 제약 조건을 지정하는 방법의 예를 가지고, 어떻게 테이블 간의 관계를 선언 엔티티
기본 액세스 키가 2 개가 아니고, 포함 액세스를 사용하십시오. 빠른 액세스를 위해 필드를 인덱싱하거나 제한 조건에 값을 포함하거나 반복하지 않으려면 다른 방법으로 구현할 수 있지만 각 JPA에는 하나만 있어야합니다 ID 필드 – karelss
이 다른 방법을 보여 주시겠습니까 – isom
메시지가 말하는대로'@ IdClass'를 정의하십시오 ... –