如何检查有多少实体附加到我的持久性上下文?

How to check how many entities are attached to my persistence context?

我目前 运行 遇到了一些内存问题,正在查看我的实体模型和服务。有些部分有很多预加载。有些部分包含很多 JPA 集合。在我的领域模型中有遍历一棵巨大树的算法。

交易结束时,我很想知道:

How many JPA entities did I load into storage during this transaction?

有什么办法可以解决这个问题吗?一些持久性上下文缓存大小可能?是这样的吗?:

em.countEntities(Customer.class)

好吧,假设您使用 Hibernate 作为 ORM,您可以使用 org.hibernate.stat.Statistics 检查一级和二级缓存信息。检查所有可用的方法 here.