回答
比方說,我們有實體是這樣的:
@Entity
@Table
public class Parent {
@Id
private Long id;
@OneToMany(mappedBy="parent", fetch = FetchType.EAGER)
@Fetch(FetchMode.JOIN)
private List<Child> child;
//getter setters
}
@Entity
@Table
public class Child {
@Id
private Long id;
@ManyToOne(fetch = FetchType.LAZY)
private Parent parent;
//getter setter
}
在上面的例子中,得到Parent
實體時,Hibernate會全自動加載所有child
實體急切地使用連接。另一方面,當您獲取Child
時,Parent
實體將不會被選中,除非您在代碼child.getParent()
中將其稱爲明確。
FetchType(Lazy/Eager)告訴我們是否希望實體在代碼中調用時急切或懶惰地加載。
FetchMode(Select/Join)告訴我們是否希望我們的實體被加載額外的選擇,或者通過join或subselect在一個查詢中加載。
FetchMode:它定義how
休眠(使用該策略,例如加入,子查詢等)將從數據庫獲取數據。
FetchType:它定義whether
休眠將獲取的數據或沒有。
備註:FetchMode
只適用於FetchType = EAGER
註解。
FetchMode不僅適用於FetchType.EAGER。規則如下:a)如果不指定FetchMode,則缺省值爲JOIN且FetchType工作正常; b)如果明確指定FetchMode.JOIN,則忽略FetchType並且查詢始終處於激活狀態; c)如果指定FetchMode.SELECT或FetchMode.SUBSELECT,FetchType.Type工作正常。 – 2016-12-28 11:16:35
@DawidStępień這個信息非常有幫助! – GMsoF 2017-11-01 05:06:43
- 1. '+ ='和'= +'之間的區別?
- 2. {!!之間的區別!!}和{{}}
- 3. ==和case之間的區別?
- 4. '#','%'和'$'之間的區別
- 5. | =和^ = css之間的區別
- 6. 「%〜dp0」和「。\」之間的區別?
- 7. .eq之間的區別。和==
- 8. ==和.equals()之間的區別?
- 9. `%in%`和`==`之間的區別
- 10. SPFile和PublishingPage類別之間的區別
- 11. System.Timers.Timer Enabled = true和.Start()之間的區別Enabled = true和.Start()之間的區別
- 12. NSthread和NStimer和NSNotifcation之間的區別?
- 13. Java和C#和.NET之間的區別
- 14. sys.log()和console.log()和console.error()之間的區別?
- 15. $ .ajax()和$ .get()和$ .load()之間的區別
- 16. javascript中的/ * * /和//之間的區別
- 17. python中的[]和[,,]之間的區別
- 18. QWidget的setStyleSheet和QApplication之間的區別
- 19. CKeditor的getHtml()和getData()之間的區別
- 20. make中的「$(shell ...)」和「$$(...)」之間的區別
- 21. C中的/ +和+之間的區別?
- 22. Alamofire的responseJSON和responseData之間的區別
- 23. WordPress的:site_id和blog_id之間的區別?
- 24. '|'之間的區別和 '+' 的位操作
- 25. 春季的/ **和/ *之間的區別
- 26. Satchmo的local_settings.py和settings.py之間的區別
- 27. String.Compare和CultureInfo的CompareInfo之間的區別
- 28. XMLReader.Create()和新的XMLTextReader()之間的區別
- 29. AppWidgetProvider的onDisabled()和onDeleted()之間的區別
- 30. Request.Cookies和Response.Cookies之間的區別
在線找到。很有幫助。 http://www.solidsyntax.be/2013/10/17/fetching-collections-hibernate/ – Jake 2016-02-07 00:40:46