0

我在 Infinispan 中使用嵌入式缓存架构,它允许动态创建/删除缓存。

如果用户尝试获取不存在的缓存,则需要获取异常,但EmbeddedCacheManagerAPI 对此没有帮助。此 API 提供两个选项

  • get(String name, true)- 获取并创建
  • get(String name, false)得到但不创造

我的做法?当用户简单地获得我们使用的缓存get(String name, false)时,当用户创建我们使用的缓存时get(String name, true)。到目前为止,一切都很好。

现在我有一个问题:一些缓存不是由应用程序创建的,而是在 XML 中定义的。因此,当用户使用它获得这些“内置”缓存之一get(String name, false)时,不会获得缓存。

如果我们能够识别在 XML 中定义的缓存,我们就可以解决这些问题。

注意:目前,我们在 XML 中定义的缓存名称前加上前缀,但这对于代码抽象来说是丑陋的,而且变得非常混乱。

4

0 回答 0