JPA 托管实体:搜索的实体是否仍然是托管实体



如果我在Query.getSingleResult中找到了一个托管实体。我可以对它进行更改吗,它不能 entityManager.merge 或持久 () 调用。

EntityManager em = ...
TypedQuery<User> query = em.createQuery("SELECT u FROM User u WHERE u.email = :userEmail");
query.setParameter("userEmail", "user@test.de");
User user = query.getSingleResult();
// change the user name and email
user.setName("Test1");
user.setEmail("test1@test.de");
// that all???

您已经通过EntityManager获取了它,并且尚未分离它,所以是的,它仍然是一个托管实体,您对它所做的任何更改都将写入数据库。

最新更新