FetchType.LAZY和FetchType.EAGER什么区别?(懒加载和急加载的理解)
生活随笔
收集整理的這篇文章主要介紹了
FetchType.LAZY和FetchType.EAGER什么区别?(懒加载和急加载的理解)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1、FetchType.LAZY:懶加載,加載一個實體時,定義懶加載的屬性不會馬上從數(shù)據庫中加載。
2、FetchType.EAGER:急加載,加載一個實體時,定義急加載的屬性會立即從數(shù)據庫中加載。
3、比方User類有兩個屬性,name跟address,就像百度知道,登錄后用戶名是需要顯示出來的,此屬性用到的幾率極大,要馬上到數(shù)據庫查,用急加載;
而用戶地址大多數(shù)情況下不需要顯示出來,只有在查看用戶資料是才需要顯示,需要用了才查數(shù)據庫,用懶加載就好了。所以,并不是一登錄就把用戶
的所有資料都加載到對象中,于是有了這兩種加載模式。
A、實體對象的延遲加載
如果想對實體對象使用延遲加載,必須要在實體的映射配置文件中進行相應的配置,如下所示:
……
一般是對整個實體對象進行設置是否是懶加載,而非單個屬性。若該實體對象關聯(lián)某個對象,如下面:
關聯(lián)的實體對象通常是懶加載
總結
以上是生活随笔為你收集整理的FetchType.LAZY和FetchType.EAGER什么区别?(懒加载和急加载的理解)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 写SpringBoot项目的时候,报错O
- 下一篇: com.fasterxml.jackso