java - Spring boot Cache Abstraction 自定义实现
问题描述
我有一个用例,我需要在 Spring Boot 应用程序中处理批量获取和单个查询。最近我意识到这不能用 @Cacheable 注释来完成,因为无法处理部分错过的情况。
有什么方法可以直接访问 hazel cast 缓存实例并在其上构建一个包装器?
使用此缓存将是相同的,但基于用例我可以添加 @Cacheable 或调用自定义实现。
解决方案
您可以获取 的句柄CacheManager
,然后Cache
像这样访问所需的对象:
@Bean
public CommandLineRunner run(CacheManager mgr) {
return args -> {
Cache cache = mgr.getCache("foo");
// do something with cache
};
}
请注意,这CommandLineRunner
只是一个示例,但它显示了如何获取 的句柄CacheManager
、从中获取相关Cache
信息并将其注入到您自己的 bean 中。
推荐阅读
- python - 使用 np.savetxt() 时如何修复 UnicodeEncodeError?
- discord - 我如何使用 discord.py 给某人一个角色?
- android - 我想“将记录插入房间数据库”->“Api 调用”->“更新本地记录”
- unity3d - ScriptableObject 在 CreateAssetMenu 中创建“非”破折号列表
- spring-boot - 通过 Spring Boot 部署 Zeebe
- mysql - 从 csv 将布尔变量读入 Mysql
- ocaml - OCaml 作为编译目标
- html - 使用 CSS 调整图像大小
- java - Firebase 数据库 - 如何使用检索到的信息进行参考
- java - 我如何使用带有键的 volley 在 android 应用程序中使用快速代码中的 API