【发布时间】:2012-05-19 05:31:04
【问题描述】:
我知道有很多关于这个著名的分离实体传递给持久错误的讨论。我遇到了那个错误。我well linked我的实体,但这不是问题:我将一个实体链接到一个已经存在的实体。我尝试了merge() 而不是persist(),它很好地执行了交易。我查询了merge() 方法,我了解到here 和there 的要点:它复制了传递对象的状态。对。
我的问题是,而不是
em.persist(e); e.anything();
使用是不是一个坏主意
e = em.merge(e); e.anything();
?
如果我很好理解,merge() 返回状态合并到的托管实例,这应该意味着用返回的实体覆盖给定实体可以访问持久实体,不会是吗?
我在任何地方都没有看到那个“解决方案”,所以我在问。如果是重复的问题,那我就过错:)
【问题讨论】:
标签: java merge persistence