1.object references an unsaved transient instance save the transient
instance before flushing
[2010-04-21]
产生此问题的原因:
映射关系错误. 当然在其他情况也可能出现这种错误.
比较常见的一种情况:所操作的对象中关联着其他对象,而且关联的对象id没有赋值。
例:删除一条记录时(deleteObject),deleteObject中关联着另一个对象(otherObject)。在删除deleteObject对象时对其赋id,如果是单表操作应该对otherObject赋值null,消除该异常。
2.net.sf.hibernate.UnresolvableObjectException: No row with the given identifier exists:
[2010-04-27]
产生此问题的原因:
数据问题。例如查询的对象中many-to-one关联的对象数据库中不存在,或关联对象中本身所含的对象数据库中已不存在。(一句话,就是数据问题)。产生原因很多,例如数据删除没有级联,人为干扰都可能造成这个问题。
例:net.sf.hibernate.UnresolvableObjectException: No row with the given identifier exists: 146, of class: com.company.entity.BmZd
查询中关联到一个值为146的Bmzd对象,但数据库Bmzd对应的表中已经不存在id为146的记录了。