爲什麼使用懶加載?爲什麼hibernate中的實體不用private?懶加載用到那些地方,爲什麼用?

    1、懶加載又稱延遲加載,就是當你需要加載一個數據的時候,他只返回這個對象的代理對象,
    這個過程是通過CGLB實現的,CGLB代理是面向對象的代理,如果對象這個實體的屬性使用了private  權限,則代理的過程中需要繼承這個類的子類將不會繼承這些屬性,所以懶加載則會失效;

    2、類級別懶加載,通常在標籤裏設置,當加載的數據非常多的時候,就不適合把數據放在緩存中了,因爲緩存的數據都是放在內存中,  當數據過多時,就會影響性能。

   3、關聯級別懶加載,在一對一與一對多等中,如果你加載一個pojo(比如用戶user)時,如果不用懶加載,那麼, 返回的數據就會把user以及user關聯的聯繫人(比如linkman)也加載出來,但是我們只使用user,沒有用到linkman,造成資源浪費等

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章