我遇到了这样的情况,我需要将分离的对象重新附加到hibernate会话,尽管会话中可能已经存在相同标识的对象,这将导致错误。
现在,我可以做两件事之一。
getHibernateTemplate().update( obj )
当且仅当对象在hibernate会话中还不存在时,这才有效。当我稍后需要它时,抛出异常,说明具有给定标识符的对象已经存在于会话中
<李> < p > getHibernateTemplate().merge( obj )
当且仅当hibernate会话中存在对象时,此操作才有效。如果我使用这个,当我需要对象稍后处于会话中时,就会抛出异常
对于这两种场景,我如何将会话附加到对象?我不想使用异常来控制这个问题解决方案的流程,因为一定有更优雅的解决方案……