2009-05-18 2 views
1

JPA (Hibernate를 사용하여 현재)를 매핑하려고합니다. 다형성 유형과의 다 대일 관계이지만 행운이 없습니다. 왜 그것이 가능하지 않은지 또는 왜 매핑에서 구체적인 유형을 선언해야하는지 알 수 없습니다. 다음은 예입니다.Many to One의 JPA 다형성 매핑

@MappedSuperclass 
class BaseClass { 
    @Id 
    long id; 
} 
class ClassWithList extends BaseClass { 
    String attribute; 

    @OneToMany(mappedBy="backPointer") 
    List<ListClass> list; 
} 
class ListClass extends BaseClass { 
    String listItemData; 

    @ManyToOne 
    @JoinColumns({ 
     @JoinColumn(name="baseId"), 
     @JoinColumn(name="baseType"), 
    }) 
    BaseClass backPointer; 
} 

조언 해 주셔서 감사합니다.

답변

1

특정 레코드 (어떤 레코드인지는 말할 것도 없습니다). 나는 당신이 TopLink JPA: How-To Define Inheritance을 보길 권한다. Hibernate에 동등하게 적용 할 수 있습니다.

+0

ListClass 개체에 열을 입력하지 않은 것이 맞지만 상속 문서 정의 방법이 내가 원하는 것으로 생각하지 않습니다. ListClass에 유형 열을 추가 할 수 있다고 생각하지만 JPA 제공자가 해당 유형을 사용하는 방법을 알지 못한다고 생각합니다. 필자는 예제에 @JoinColumns 주석을 추가 할 것이다. – Mike