我在尝试获取延迟加载的对象时“无法初始化代理 - 无会话”。我知道这是因为我的对象是分离的,我需要先更新它。 我的问题是为什么这样做:
repo.update(object);
object.getSomeList();
当那些没有:
object = repo.merge(object);
object.getSomeList();
repo.evict(object);
repo.get(objectClass,object.primaryKey());
object.getSomeList();
Repo是我的存储库类,它引用了Session并运行session.saveOrUpdate(...),session.merge(...)等
我认为所有版本都让我得到一个持久对象,所以它不再分离了。真的吗?如果是,虽然我没有会话错误?如果不是,为什么不呢? :)
答案 0 :(得分:0)
如果我理解你的问题,你应该初始化懒惰属性
Hibernate.initialize(object.getSomeList());