【发布时间】:2010-02-25 13:27:43
【问题描述】:
我有一个名为 Execution 的休眠实体。它在我的流程开始时创建并在结束时更新,指示它是如何完成的。
我想更新此实体的单个属性,而不会在我的数据库中引起选择。
Execution execution = entityManager.getReference(Execution.class, executionId);
execution.setStatus(Status.FINISHED); //--> 调用此方法会在我的数据库中触发一个 SELECT。我不希望它发生,我只想更新我的实体。
这不是特定于此方法的,任何其他调用的方法都会导致 SELECT 子句。事实上,选择似乎发生在我的方法被调用之前。我的印象是休眠代理在我的类无参数构造器中放置了一些代码,以在每次调用任何方法时触发选择。
是否可以在不触发数据库中的 SELECT 语句的情况下更新 JPA/Hibernate 实体?
【问题讨论】:
标签: hibernate select jpa lazy-evaluation