2011-05-06 275 views
0

父對象和子對象有兩個對象 父對象和子對象實現顏色 子對象和父對象通過一對多關係進行映射。 但是,只有父圖映射到顏色列,其中顏色列僅在父表上存在。 是否可以通過hibernate映射將子顏色映射到父顏色?休眠映射

父表 ID顏色

CHID表 ID PARENT_ID

所以我可以使用休眠中下面的「子C其中c.colour」不使用別名。 如果可能,請提供一些例子,謝謝。

回答

0

這是不太你要求的解決方案,但爲什麼在Child不落實getColour方法:

public Color getColor() { return this.parent.getColor(); } 

及用途:

Child c where c.parent.color = ? 
在HQL

這樣,你的域對象的用戶將在Child類上有一個getColor()方法,它真的從它的parent(如在DB中實現的那樣)獲得。你可以在DAO層(這是HQL查詢所在的位置)隱藏這個間接尋址。您甚至可以使Parent類的color成員private類和使用反射實施Child.getColor()。 :-)