繁体   English   中英

Spring如何识别自定义缓存管理器

[英]How does Spring recognize custom Cache Manager

如果您为缓存管理器创建一个类,Spring 允许自定义缓存。 它是如何在引擎盖下工作的? Spring 如何识别我们的自定义类?

您将缓存管理器创建为@Configuration类中的@Bean ,然后由 spring 完成其余的工作(不要忘记还将@EnableCaching添加到您的配置类中)。

例如

@Bean
public CacheManager myCacheManager() {
    MyCacheManager cacheManager = new MyCacheManager();
    cacheManager.addCache(new MyCache("myCache"));
    cacheManager.addCache(new MyCache("myOtherCache"));
    return cacheManager;
}

您的缓存管理器类必须实现 spring 的CacheManager接口。

然后使用它,@ @Autowire CacheManager myCacheManager 进入你的组件并像这样使用它:

myCacheManager.getCache("myCache");

注意:spring 喜欢按名称匹配事物,因此如果您调用myCacheManager以外的其他myCacheManager (我希望您myCacheManager ),请确保在将其自动连接为依赖项时使用该名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM