Hibernate(load方法和get方法区别)

 get 和load的区别:
* 1.发送SQL的时机:
* load这个方法采用了一个技术.lazy延迟加载(懒加载).真正使用这个对象的数据的时候.(对象的数据不包括主键).
* get这个方法是立即检索.当执行session.get()方法的时候,马上发送SQL语句查询.

* 2.返回的对象:
* load方法返回的是代理对象.
* get方法返回的是真实的对象.(如果之前对象使用load方法查询过,那么再次调用get方法得到的model还是代理的model)

* 3.查询一个不存在的数据:
* load方法抛异常:ObjectNotFoundException.
* get方法抛异常:NullPointException.

猜你喜欢

转载自1193355343.iteye.com/blog/2375100