0

我已经使用 EhCache 实现了 Hibernate 2nd Level 并使用指令注册了缓存事件侦听器

这里:http ://ehcache.org/documentation/apis/cache-event-listeners

CacheEventListenerFactory 和 CacheEventListener 有效,但我可以知道如何从元素中检索我的实体吗?

我试过

public void notifyElementPut(final Ehcache cache, final Element element) throws CacheException{
     ABEEntity entity =  (ABCEntity)element.getObjectValue(); // throws ClassCastException

}

它不断抛出类转换异常。我可以知道 ObjectValue 包装了吗?我相信是一个数组,但我找不到任何关于它的信息。

有人可以提供答案和文档吗?

文档比答案更重要???

4

1 回答 1

0

不幸的是,您将无法通过这样做来访问您的实体对象,因为 Hibernate 2nd lvl 缓存不存储实体,而是存储称为脱水状态的东西。

有关更多详细信息,请参阅在 hibernate 的二级缓存中缓存哪些类

于 2012-12-18T14:53:59.943 回答