预取java咖啡因缓存中的所有条目

时间:2016-05-30 23:11:30

标签: java caching caffeine

我正在尝试使用https://github.com/ben-manes/caffeine构建缓存,我需要在启动时获取所有条目,并且我不知道所有的密钥。我的CachLoader有这样的东西,并试图在启动时缓存所有。但看起来我需要事先了解所有密钥,如果我想预取所有条目进入缓存?我错过了什么吗?

所以,假设我调用cache.getAll(10)并且只有10 - > 100将被缓存,即使loadAll方法返回3个条目(10 - > 100,20 - > 400,30- - > 900)

@Override
public Map<Integer, Integer> loadAll(Iterable<? extends Integer> keys)
{
    // gets called for the keys which are not present in the cache only by getAll
    // we will load all keys irrespective of what is passed in
    System.out.println("in loadAll");
    // problem here is it is only caching the supplied keys
    Map<Integer, Integer> map = new HashMap<Integer, Integer>();
    map.put(10, 100);
    map.put(20, 400);
    map.put(30, 900);
    return map;
}   

0 个答案:

没有答案