JPA - 为什么我在DB中看到每一行的两个实体实例?

时间:2012-11-29 19:53:21

标签: java performance hibernate jpa jprofiler

当我使用JProfiler分析应用程序时,我在Db中看到每个记录有两个实体实例。

比如说,Global_message是我的表名,它有20条记录,映射的JPA实体在Jprofiler中显示40个实例[2 Classes]。

有人可以帮忙吗?这是预期的行为吗?

我在服务器启动时将所有表加载到缓存中,并且我在服务器启动时看到此行为。

1 个答案:

答案 0 :(得分:2)

这是完全正常的。 Hibernate需要其他实例检查是由应用程序脏操作的实体实例(是否已修改)。在刷新会话的那一刻,Hibernate会检查对其他实例的可能更改。有关脏检查的更多详细信息this question确实有很好的答案。