我在实体管理器刷新单个实体时遇到问题,需要很长时间,超过一分钟。我有一个屏幕,用户可以在上面编辑一条简单的记录,例如更改某人的名字。完成后,他们可以保存或取消。在取消操作中,我正在执行以下行,以便如果他们进行了更改但不想保存,它将从对象的缓存副本中清除更改。
getEntityManager().refresh(getInstance());
这是在 entityHome bean 上的。我最终做的是使用
getEntityManager().clear();
这对我来说完成了同样的事情,但运行时间不到一秒钟。
我正在使用 EE5、JDBC 连接到 Oracle 11g DB,并使用 JTA 进行事务处理。
有没有人知道为什么这需要这么长时间?