Hibernate延迟加载的原理
2008-04-19 20:31
288 查看
Hibernate延迟加载的原理:
当hibernate设置为 延迟加载策略时 .查询后返回的是代理类的实例:
代理类的特征:
1. 有hibernate 在运行时动态生成.它扩展了持久化类.因此实现了持久化类的所有属性和方法.它的实现对应用程序是透明的(也就是应用程序看不到这个代理类
2,hibernate创建代理类的实例.仅仅初始化它的 OID 属性
3,当应用程序第一次访问代理类的属性时就会初始话代理类的其他属性.(除了访问OID 属性,因为OID已经初始话没有必要再到数据库里去查.)
get() 方法 总是立即加载. 这也是 get() 同 load()的一个区别. 还一个区别是 如果数据库中没有结果get()回 null 而load();会报错
当hibernate设置为 延迟加载策略时 .查询后返回的是代理类的实例:
代理类的特征:
1. 有hibernate 在运行时动态生成.它扩展了持久化类.因此实现了持久化类的所有属性和方法.它的实现对应用程序是透明的(也就是应用程序看不到这个代理类
2,hibernate创建代理类的实例.仅仅初始化它的 OID 属性
3,当应用程序第一次访问代理类的属性时就会初始话代理类的其他属性.(除了访问OID 属性,因为OID已经初始话没有必要再到数据库里去查.)
get() 方法 总是立即加载. 这也是 get() 同 load()的一个区别. 还一个区别是 如果数据库中没有结果get()回 null 而load();会报错
相关文章推荐
- Hibernate延迟加载实现原理
- HIBERNATE延迟加载原理
- Hibernate延迟加载原理与实现方法
- Hibernate延迟加载实现原理
- hibernate延迟加载lazy的原理,以及为什么session关闭会报错
- hibernate延迟加载的原理与实现
- Hibernate的延迟加载原理
- Hibernate学习--hibernate延迟加载原理(动态代理)
- hibernate的延迟加载的原理
- Hibernate延迟加载实现原理
- Hibernate延迟加载实现原理
- Hibernate延迟加载的原理
- Hibernate 延迟加载原理
- hibernate延迟加载的原理与实现
- Hibernate的延迟加载原理
- Hibernate 延迟加载剖析与代理模式应用
- Hibernate延迟加载问题
- Hibernate延迟加载-by宋迪
- Hibernate的延迟加载
- MyBatis原理-延迟加载,一级缓存,二级缓存设置