Hibernate中關於get()和load()方法檢索的區別

 hibernate中session.get/load方法都能通過指定實體類名和id從數據庫中讀取指定的記錄,並且返回與之對映的實體對象。但是它們也有很大的區別 ,get()和load()方法在執行檢索時的區別:

1.get()在類檢索級別時總是執行立即檢索而且如果檢索不到相關的對象的話會返回null,load()方法則會拋出一個ObjectNotException

2.load()方法可返回一個實體代理類類型,而get()方法直接返回的是實體類對象。

3.load()方法可以充分利用內部緩存和二級緩存,而get()方法會忽略二級緩存,若內部緩存沒有查詢到會到數據庫中去查詢。

 

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