当Guava CacheLoader无法加载数据时应该抛出什么异常?

时间:2015-05-05 16:44:16

标签: java guava

我正在实现简单的番石榴CacheLoader,如此处所述

   CacheLoader<Key, Graph> loader = new CacheLoader<Key, Graph>() {
     public Graph load(Key key) throws AnyException {
       return createExpensiveGraph(key);
     }
   };
   LoadingCache<Key, Graph> cache = CacheBuilder.newBuilder().build(loader);

这是否意味着我应该创建自己的异常类并在值为null时抛出它或是否有更好的方法来处理这种情况?

1 个答案:

答案 0 :(得分:4)

你可以抛出你想要的任何异常 - 这可能是你做的事情,或内置的东西。对于哪种异常最适合缓存没有特殊规则 - 只要使用其他最合适的异常。