我在DAO中有一种如下所示的方法,

public void updateEntity1(Entity2) {
     Entity1 = entitymanager.find(....);
     Entity1.setAttr(Entity2.getAttr());
     .........
     entitymanager.merge(Entity1);
     em.flush();
}


我想要用值entity2包含的值更新entity1,在方法的结尾,我发现entity1的attr成功更新,但是数据库中的值没有改变?
这种方法有什么问题吗?

最佳答案

尝试通过以下事务将代码括起来:

entityManager.getTransaction().begin();
....//your code
entityManager.getTransaction().commit();

关于java - 更新实体时的JPA,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36385650/

10-15 13:10