在我的 JPA 实现中,我执行 em.find() 来选择对象列表并修改这些对象。接下来,我在事务中调用 em.merge() 更新这些修改后的对象(TX 以保留其他相关内容) .
这很好用,除了 SELECT 发生两次(一次在 find 期间,另一次在其他期间),我觉得这在我的情况下是多余的和性能杀手。
我不愿意将 find() 带入 em.merge() 的事务边界内,即使这样做会解决后一个 SELECT。
定义我自己的 NamedQuery 是在不发出另一个 SELECT 的情况下更新这些对象的唯一方法吗?
谢谢