Hibernate中session的get方法和load方法的区别
生活随笔
收集整理的這篇文章主要介紹了
Hibernate中session的get方法和load方法的区别
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一.發(fā)送SQL時(shí)機(jī):
load方法采用延遲加載(lazy懶加載),執(zhí)行到這行代碼的時(shí)候,不會(huì)發(fā)送SQL語(yǔ)句,當(dāng)真正使用這個(gè)對(duì)象的數(shù)據(jù)(對(duì)象的數(shù)據(jù)不包括主鍵)的時(shí)候才發(fā)送SQL語(yǔ)句;
get方法采用立即加載,當(dāng)執(zhí)行session.get()方法的時(shí)候,會(huì)馬上發(fā)送SQL查詢(xún)語(yǔ)句。
二.返回的對(duì)象:
load方法查詢(xún)后返回的是代理對(duì)象,利用javassist技術(shù)產(chǎn)生的代理(javassist-3.18.1-GA.jar);
get方法查詢(xún)后返回的是真實(shí)的對(duì)象。
三.查詢(xún)一個(gè)不存在的數(shù)據(jù):
load方法拋異常:ObjectNotFoundException;
get方法返回的結(jié)果是:null
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/AI-xiaocai/p/10705740.html
總結(jié)
以上是生活随笔為你收集整理的Hibernate中session的get方法和load方法的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2018境外返现优惠大的信用卡 海淘薅羊
- 下一篇: 团队项目第一篇——NABCD