Hibernate:一级缓存

时间:2011-06-05 12:59:58

标签: hibernate session

有人能告诉我如何窥视Hibernate会话管理的对象?

我正在尝试使用eclipse调试器并深入研究 persistenceContext ,但我不确定这是否是我发现hibernate会话管理对象的地方。

有人能告诉我如何找出Hibernate对象管理的对象吗?

感谢。

1 个答案:

答案 0 :(得分:2)

您是否希望仅仅为了自己的利益和学习而使用这些信息?在我所知的任何标准的JPA批准方法中,您将无法访问这些信息。

但是,如果你正在使用Hibernate,你可以设置一个断点并深入研究Hibernate的PersistenceContext.java实现,它被称为StatefulPersistenceContext.java。应该有一个实体和集合的地图加载。您当然需要Hibernate源代码。

这些字段的名称应该是......

private Map entitiesByKey;
private Map proxiesByKey;
private Map collectionsByKey;

编辑:不要忘记在Eclipse调试器中切换“显示逻辑结构”或导航这些地图会让你疯狂。