@Inheritance(strategy=InheritanceType.TABLE_PER_CLASS)
在父類中允許將子實體視爲具有與父代相同的信息的表加上一些屬性。閱讀時這對我很好(http://viralpatel.net/blogs/hibernate-inheritance-table-per-concrete-class-annotation-xml-mapping/)。寫入父實體以及在JPA模式上使用TABLE_PER_CLASS繼承策略存儲子實體時的策略
但我想這樣的情況下,我存儲一個子實體(目前它只填充子表),父表得到更新以及插入的共享部分。
在任何給定的寫入操作中,是否可以配置,或者是否需要在事務中明確執行childRepo.save(child)
加parentRepo.save(child)
?
從TABLE_PER_CLASS和JOINED策略中混合使用。 JOINED將共享信息存儲在父級中,而額外的子級屬性;而TABLE_PER_CLASS將所有內容存儲在子節點中。我想要所有信息的子表,而父表同時獲取所有共享信息。
什麼是'childRepo'? – chrylis
什麼是「知識庫」?如果你的意思是一個Spring數據庫,那麼你需要在你的問題中包含一個主要組件。你永遠不必爲了將它傳遞給接受超類的方法而將子類轉換爲其超類。 – chrylis
1.是的,對不起,Spring Data的JPA Repostory。 2.這就是爲什麼我討厭這個解決方法,我試圖找到一個更好的解決方案 – Whimusical