在我看來,當您在Hibernate/JPA中使用關係時,使用像OneToMany這樣的關係可以提高讀取性能,因爲只需要運行一個數據庫調用即可獲得一個父實體和所有子實體。由於我的應用程序的性質,我想避免使用關係並將外鍵列映射爲常規列。在沒有關係的情況下使用Hibernate/JPA並避免多個數據庫調用
一個問題是,當我真正要處理的關係,我需要做這樣的代碼......
ParentEntity pe => someDao.findBySomething("some param"); //db round trip List<ChildEntity
childEntities = someDao.findChildren(pe); //db round trip
好像有某種方式來做事一大更手動像我希望在避免額外的往返旅程。有任何想法嗎?
,我可以寫明白繼承和輸出優化的SQL一個以上的數據庫是非常有用的查詢這一事實。我發現只有在你始終想要從DB加載整個對象圖的時候才使用關係纔是合理的。更不用說使用Hibernate這樣的像Warp-Persist這樣偉大的庫,通過移除樣板代碼使我的生活變得更加輕鬆。 – benstpierre 2009-12-15 20:40:59
應該指出的是,非關係實體更適合JAX-RS RESTful Web服務,因爲您通常希望返回實體父ID而不是父母本身,並且您不一定要通過寫入更多數據來複制數據模型轉移對象。 – 2014-05-15 00:25:43