JPA 2,休眠4。
从创建一个数据库视图实体。 我有困难得到这两个实体正确映射。 我有一个复合键父实体和子实体具有单个值的关键。
这两者之间的关系由具有父的复合关键字一部分的儿童实体定义。 试图让两者之间的关联。
复合键类
@Embeddable
public Class ParentID implements Serializable {
private static final long serialVersionUID = 1L;
private long keyIdOne;
private String keyIdTwo;
....
}
父类
@Entity
public class Parent {
@EmbeddedId
protected ParentID id;
....
@OneToMany
private List<Child> childList;
}
子类
@Entity
public class Child {
@Id
private long Id;
private long keyIdOne //FK to part of the parentId composite key
.....
@ManyToOne
private Parent parent;
}
我不完全知道如何让映射工作。 从孩子到父母的关系是keyIdOne
值。 但是,如果这是在父组合键我不知道如何让他们加入该值的一部分。
在子类中,我无法使用:
@ManyToOne
@JoinColumn(name="keyIdOne", referencedColumnName="keyIdOne")
private Parent parent;
因为它抛出的一个错误:
儿童referencedColumnNames(keyIdOne)是未映射到单个属性引用父。
任何帮助深表感谢。