回答
其簡單:考慮兩個實體1部和2員工,他們有一個一對多的映射。這是一個部門可以有許多員工 cascade = CascadeType.ALL這實際上意味着DepartmentEntity發生的任何更改都必須級聯到EmployeeEntity。如果您保存一個部門,則所有關聯的員工也將被保存到數據庫中。如果刪除部門,則與該部門相關的所有員工也將被刪除。
級聯式全部是PERSIST,REMOVE,MERGE和REFRESH級聯類型的組合。Example for Cascade type All
提取類型Eager本質上與Lazy.Lazy相反,它是所有Hibernate註記關係的默認提取類型。當您使用Lazy fetch類型時,Hibernate不會加載該特定對象實例的關係。 Eager將默認加載與Hibernate加載的特定對象相關的所有關係。 Click here for an example.
級聯是有關從
Parent
實體傳播的entity state transition到Child
,通過允許ORM工具堅持/合併/刪除代表了依賴協會簡化了數據訪問代碼。EAGER抓取是一個映射 - 時間關聯加載的決定,因爲它指示Hibernate總是在根實體加載時檢索依賴的關聯。查詢時間獲取是首選,因爲它提供了更好的靈活性,而LAZY獲取映射策略可以被
FETCH
指令覆蓋。用EAGER
獲取你的卡住,因爲你不能在查詢時重寫它,並且Hibernate將總是獲取關聯,即使在某些使用情況下你不需要它。的
Ok ..但是當我們說cascadetype全部時,在選擇查詢的情況下,它會同樣加載所有關聯的實體,以便在提取時可以檢索所有關聯的對象類。然後在什麼條件下使用它們 –
仔細閱讀答案。我已經回答了您的評論問題 –
- 1. Hibernate級聯類型還是別的?
- 2. JPA級聯註釋和Hibernate級聯註釋之間的區別
- 3. JPA,EJB3和hibernate有什麼區別?
- 4. 泛型類型和泛型類型定義有什麼區別?
- 5. Git中的樹和提交類型有什麼區別?
- 6. Hibernate中不同的映射類型有什麼區別?
- 7. 在Hibernate中刷新和提交有什麼區別?
- 8. 在CSS中,級聯和繼承有什麼區別?
- 9. 嵌套和級聯if-else有什麼區別
- 10. 活動和班級有什麼區別?
- 11. UI級別測試和API級別測試有什麼區別?
- 12. 選項類型和可空類型有什麼區別?
- 13. 有什麼區別擴展類型和類型
- 14. ASN.1枚舉類型和選擇類型有什麼區別?
- 15. 兩種(類型)值和類型(值)有什麼區別?
- 16. 潛類型和Manifest類型有什麼區別?
- 17. 複合類型和匿名類型有什麼區別?
- 18. 類型1和類型2模糊邏輯有什麼區別?
- 19. C++「類型推導」和Haskell「類型推論」有什麼區別?
- 20. Cython中numpy「類型標識符」和「類型」有什麼區別?
- 21. 類型定義和類型引用有什麼區別?
- 22. Haskell中的類型和數據類型有什麼區別?
- 23. 正常類型和匿名類型有什麼區別?
- 24. 類型轉換和類型斷言有什麼區別?
- 25. 什麼是頂級類型和嵌套級別類型?
- 26. 裝配類型 - 有什麼區別
- 27. Rails數據類型有什麼區別?
- 28. 文檔類型有什麼區別
- 29. Debug類和Trace類有什麼區別?
- 30. ConfigurationManager類和Settings類有什麼區別?
可能重複[FetchType LAZY和Java持久EAGER區別?(http://stackoverflow.com/questions/2990799/difference-between-fetchtype-lazy-and-eager-in-java-持久性) – DSF