我有以下類別:JPA:單向一對多問題
class A{
@OneToOne(cascade=CascadeType.ALL)
private B b;
}
class C{
@ManyToOne
private A a;
}
class B{
@OneToOne
private A a;
@MapKey(name = "name")
@OneToMany(cascade = CascadeType.ALL, ...)
@JoinColumn(...)
private Map<String C> cs;
}
如何做我必須指定在B.cs映射加入其中B.a == C.A?
這可能嗎?或者我必須將C.a屬性更改爲C.b? (我更願意保持原樣,因爲實體B只是一個輔助類。) 我也嘗試將B更改爲@Embeddable,但Map不支持嵌入。
「derive」是什麼意思?遺產?。這是一個組合,其中A有更多的屬性,B有更多的屬性。一個關係(繼承)在這裏是錯誤的。 – Puce 2011-03-27 18:12:11
我的意思是'延伸'在這裏。也許你是對的。在這種情況下,我個人將創建另一個基類_A,並使A和B擴展_A。 – 2011-03-27 23:55:49