Hibernate备忘知识点:
1、永远不要手动修改OID,因为会造成缓存中的数据不准确
2、Session接口中的update方法是将一个游离态对象转换成持久化对象的解决方案
3、Session接口中的saveOrUpdate方法,如果传进去的是瞬时对象,就执行save,如果传入的是游离对象,就执行update方法
4、如果正在使用延迟加载,并且servlet中的session.close()已经执行,那么在jsp中获取子表数据就会报错,这个在延迟加载,懒加载已经说过,解决方案是在session.close()之后加上Hibernate.initialize(user); 进行代理类的实例化。
Hibernate中代理类的概念即只有一个OID的类,所以使用延迟加载时,lIst中的子表数据全是代理类。
原文地址:http://blog.csdn.net/zhanglu1236789/article/details/45968797