Hibernate EhCache:获取二级缓存中的所有条目

时间:2013-01-09 06:29:25

标签: java hibernate ehcache

如何在二级缓存中获取所有条目?

我的应用程序通过cache.removeAll()进行重新缓存;并列出所有()所以在Hibernate二级。它将包含我需要缓存的所有条目。

并且在这15分钟内..我只希望从第二级获得所有参赛作品(没有击中DB)

我不希望使用hibernate查询,因​​为底层经常变化。

我还有其他选择吗?

1 个答案:

答案 0 :(得分:0)

我设法通过使用:

来实现这一目标

假设我的密钥是字符串:

List keys = Ehcache.getKeysWithExpiryCheck();
List<ABC> abcList = new ArrayList();

for(Object key = keys){
    String k = (String)((CacheKey) key).getKey();
    abcList.add(dao.get(k));
}

dao.get()将在数据库之前首先点击缓存。

=)如果有人有更好的解决方案,请告诉我。