Caffeine的tokenCache与Spring的CaffeineCacheManager缓存区别

tokenCache 是 Caffeine 原生创建的缓存实例,它不需要依赖 Spring 的 CaffeineCacheManager,也不参与 Spring 缓存抽象体系(比如不能用在 @Cacheable 注解中)。

tokenCache 只需要简单的几行代码就可以实现本地缓存

java 复制代码
    private final LoadingCache<String, Integer> tokenCache;

    public TokenClientCacheService() {
        tokenCache = Caffeine.newBuilder()
            .maximumSize(1000)
            .expireAfterWrite(1, TimeUnit.MINUTES)
            .build(this::_loadClientFromRedis); // 自动加载
    }

而不用去配置CaffeineCacheManager这些配置文件,也不需要@EnableCaching

使用它:

java 复制代码
Integer client = tokenCache.get("abc123");

如果你是在一个 Spring Boot 项目中,并且希望:

  • 使用 @Cacheable 注解;
  • 统一配置多个缓存策略;
  • 动态管理缓存配置;

那建议你使用 CaffeineCacheManager + @Cacheable 的方式。

否则,如果你只是某个局部业务逻辑需要缓存,不想引入太多 Spring 依赖,可以用 LoadingCache。

相关推荐
闻哥1 分钟前
从测试坏味道到优雅实践:打造高质量单元测试
java·面试·单元测试·log4j·springboot
smileNicky2 分钟前
统一网关的登录流程总结
java
计算机程序设计小李同学14 分钟前
基于 Spring Boot + Vue 的龙虾专营店管理系统的设计与实现
java·spring boot·后端·spring·vue
LiZhen79819 分钟前
SpringBoot 实现动态切换数据源
java·spring boot·mybatis
周航宇JoeZhou28 分钟前
JB2-7-HTML
java·前端·容器·html·h5·标签·表单
JZC_xiaozhong38 分钟前
多系统权限标准不统一?企业如何实现跨平台统一权限管控
java·大数据·微服务·数据集成与应用集成·iam系统·权限治理·统一权限管理
上架ipa1 小时前
redis图形化客户端功能对比
redis·缓存
爬山算法2 小时前
Hibernate(85)如何在持续集成/持续部署(CI/CD)中使用Hibernate?
java·ci/cd·hibernate
菜鸟233号2 小时前
力扣647 回文子串 java实现
java·数据结构·leetcode·动态规划
qq_12498707532 小时前
基于Java Web的城市花园小区维修管理系统的设计与实现(源码+论文+部署+安装)
java·开发语言·前端·spring boot·spring·毕业设计·计算机毕业设计