首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Load与get差异

2012-08-22 
Load与get区别load方法抛异常是指 在使用该对象的数据时,数据库中不存在该数据时抛异常,而不是在创建这个

Load与get区别


load方法抛异常是指 在使用该对象的数据时,数据库中不存在该数据时抛异常,而不是在创建这个对象时。

?

get方法首先查询session缓存,没有的话查询二级缓存,最后查询数据库;反而load方法创建时首先查询session缓存,没有就创建代理,实际使用数据时才查询二级缓存和数据库。

?

总之对于get和load的根本区别,一句话,hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,如果在使用过程中发现了问题,只能抛异常;而对于get方法,hibernate一定要获取到真实的数据,否则返回null。
?

?

热点排行