我是新来的整个JPA的东西,所以我有关于处理JPA合并并坚持最佳方式的多个问题。处理JPA合并的最佳方法?
我有一个用户对象,应该更新(一些值,如日期和名称)。我必须首先合并传递的对象还是安全地找到新对象?
目前我的更新用户代码如下所示:
public void updateUserName(User user, String name) { // maybe first merge it? user.setName(name); user.setChangeDate(new Date()); em.merge(user); }
我如何可以肯定的是被称为更新方法之前用户还没有被操纵?是否更安全地做这样的事情:
public void updateUserName(int userId, String name) { User user = em.getReference(User.class, userId); user.setName(name); user.setChangeDate(new Date()); em.merge(user); }
也许其他解决方案?我观看了多个视频,看到了很多例子,但它们都不一样,没有人会解释最佳做法。
将孩子添加到关系中的最佳方法是什么?例如我的用户对象有一个连接到多个组。我应该为用户调用JPA处理程序,并将新组添加到用户组列表中,还是应该在具有持久性的组处理程序中创建组并将其手动添加到我的用户对象?这里
希望有人有线索;)
见http://stackoverflow.com/questions/1069992/jpa-entitymanager-why-use-persist-over-merge – GKislin 2016-10-03 16:54:21