首页 > Web开发 > 详细

Hibernate懒加载

时间:2015-10-23 00:18:56      阅读:233      评论:0      收藏:0      [点我收藏+]
  • 面试题 getload方法区别?

get: 及时加载,只要调用get方法立刻向数据库查询

load:默认使用懒加载,当用到数据的时候才向数据库查询。

 

  • 懒加载:(lazy)

概念:当用到数据的时候才向数据库查询,这就是hibernate的懒加载特性。

                 目的:提供程序执行效率!

  • lazy

        true   使用懒加载

        false   关闭懒加载

        extra   (在集合数据懒加载时候提升效率)

在真正使用数据的时候才向数据库发送查询的sql

如果调用集合的size()/isEmpty()方法,只是统计,不真正查询数据!

                        

 

  • 懒加载异常

  • Session关闭后,不能使用懒加载数据!

  • 如果session关闭后,使用懒加载数据报错:

org.hibernate.LazyInitializationException: could not initialize proxy - no Session

                 如何解决session关闭后不能使用懒加载数据的问题?

                          // 方式1 先使用一下数据

                 //dept.getDeptName();

                // 方式2:强迫代理对象初始化

                 Hibernate.initialize(dept);

                // 方式3:关闭懒加载

                         设置lazy=false;

                 // 方式4 在使用数据之后,再关闭session

Hibernate懒加载

原文:http://my.oschina.net/u/242479/blog/520939

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!