gpt4 book ai didi

java - Guava 加载多个键并获取多个项目

转载 作者:行者123 更新时间:2023-12-05 02:18:17 25 4
gpt4 key购买 nike

我想使用 Guava 作为缓存,但我似乎无法找到 Guava 允许我加载多个项目并获取多个项目的能力。

我看到 CacheLoader 有以下内容:

    @Override
public Value load(String key) {
return getKey();
}

我需要加载的是:

    @Override
public List<Value> load(List<String> keys) {
return getKeys();
}

我还希望从缓存中获取一个项目或一个项目列表,但即使为了获取它而不得不将那个项目包装到列表中,我也很高兴。

我是 Guava 的新手,我不确定 Guava 是否有这样的功能?

最佳答案

您可以使用 CacheLoader.loadAll()加载多个项目,LoadingCache.getAll()得到它们。

例如:

new CacheLoader<String, Value>() {
@Override
public Value load(String key) {
return getKey();
}

@Override
public Map<String, Value> load(Iterable<? extends String> keys) {
return getKeys();
}
}
//...
List<String> keys = Arrays.asList("key1", "key2", "key3");
ImmutableMap<String, Value> values = cache.getAll(keys);

关于java - Guava 加载多个键并获取多个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45890143/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com