为了账号安全,请及时绑定邮箱和手机立即绑定

对象引用未保存的瞬态实例-在刷新之前保存瞬态实例。

对象引用未保存的瞬态实例-在刷新之前保存瞬态实例。

RISEBY 2019-07-26 17:14:57
对象引用未保存的瞬态实例-在刷新之前保存瞬态实例。使用Hibernate保存对象时收到以下错误object references an unsaved transient instance - save the transient instance before flushing
查看完整描述

3 回答

?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

你应该包括cascade="all"(如果使用XML)或cascade=CascadeType.ALL(如果使用注释)在集合映射上。

之所以会出现这种情况,是因为您的实体中有一个集合,而且该集合有一个或多个不在数据库中的项。通过指定上述选项,您可以告诉Hibernate在保存父程序时将它们保存到数据库中。



查看完整回答
反对 回复 2019-07-27
?
湖上湖

TA贡献2003条经验 获得超2个赞

当Hibernate认为需要保存与您正在保存的对象相关联的对象时,这会发生在保存对象时。

我有这个问题,不想保存对引用对象的更改,所以我希望级联类型为None。

诀窍是确保设置了引用对象中的ID和版本,这样Hibernate就不会认为引用的对象是一个需要保存的新对象。这对我有用。

查看保存的类中的所有关系,以求出关联对象(以及关联对象的关联对象),并确保在对象树的所有对象中设置ID和版本。




查看完整回答
反对 回复 2019-07-27
  • 3 回答
  • 0 关注
  • 431 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信