本文共 799 字,大约阅读时间需要 2 分钟。
懒加载(延迟加载): 只有持久状态的对象才能懒加载 ||瞬时状态(不用的时候被垃圾回收处理) ||持久状态(经过session管理的这些对象持久状态的对象,例如:save get update 被它操作过的对象) ||游离状态(session.close(),flush clear commit 后变成游离状态)瞬时->持久状态->游离状态get是立即加载,load是懒加载当真正需要数据的时候,hibernate才从数据库中加载数据内存更有效率的使用1:关联级别2:类级别3:属性级别在配置文件中可以在下面三个标签中(class ,property ,set )添加属性:lazy=“true”来开启懒加载,默认是true,可设置为false来关闭懒加载;然后在使用get,load方法的时候: Orders order =(Orders) se.get(Orders.class,3l); Set set =order.getGoodses();上面这段代码:注释第二行的时候,会产生一条select语句,已经加载过了,执行两条完成会产生两条select语句 Orders order =(Orders) se.load(Orders.class,3l); Set set =order.getGoodses();上面这段代码:注释第二行的时候,不会产生select语句,已经加载过了,执行两条完成会产生一条select语句懒加载的好处:为了减少并发量,减少系统资源的消耗,我们让数据在需要的时候才进行加载,这时我们就用到了懒加载。
转载地址:http://ppxvi.baihongyu.com/