2014-02-24 54 views
3

哪裏可以定義@IdClass兩種情景的註釋?JPA Inheritance IdClass位置最佳實踐


在我的情況下,1視圖:ENTITY1和ENTITY2都應該有自己的@IdClass

因爲Entity2也有主鍵。


和案例2:MapedSuperClass2應該有@IdClass

因爲實體1 &實體2共享相同的主鍵。


就是我吧?

案例1:

enter image description here

案例2:

enter image description here

+0

我不明白你的問題。你能重新表達你的問題嗎? –

回答

0

在第一種情況下,當你在父類中定義的IdClass可以不加甚至刪除子類中的鍵字段,因此不允許在Entity2中的鍵中添加新值由規範。

在第二種情況下,考慮在第二個MapperSuperClass中創建@IdClass以在所有子類中使用,因爲您不需要將更多Fiels添加到鍵中,這應該可行。

+0

我理解case2,但是你可能會解釋case1 more(例如,'刪除子類中的鍵的字段','最好在父類或子類上定義IdClass') – hiddenuser