读书人

hibernate中的get() and load()差异

发布时间: 2012-10-09 10:21:45 作者: rapoo

hibernate中的get() and load()区别
a : get()检索不到数据返回null
load()检索不到数据抛出异常 ObjectFoundException
b : get()检索首先是一级缓存Session,如果没有数据再生成sql语句在数据库中检索
load()检索首先是一级缓存session,没有数据再进行二级缓存检索,最后进行sql语句检索
c : get不能用于延迟检索,load()可以用于延迟检索 1 楼 sheep3600 2010-08-25 纠正一下你的第三点。

get方法首先查询session,没有的话查询二级缓存,最后查询数据库;
load方法创建时首先查询session缓存,没有就创建代理,实际使用数据时才查询二级缓存和数据库。 2 楼 laryun 2010-08-29 thank 提醒

读书人网 >软件架构设计

热点推荐