java项目集成J2Cache(基于内存和 Redis 的两级 Java 缓存框架)

一、概述

SpringCache本身是一个缓存体系的抽象实现,并没有具体的缓存能力,要使用SpringCache还需要配合具体的缓存实现来完成。

虽然如此,但是SpringCache是所有Spring支持的缓存结构的基础,而且所有的缓存的使用最后都要归结于SpringCache,那么一来,要想使用SpringCache,还是要仔细研究一下的。

二、缓存注解

SpringCache缓存功能的实现是依靠下面的这几个注解完成的。

@EnableCaching:开启缓存功能
@Cacheable:定义缓存,用于触发缓存
@CachePut:定义更新缓存,触发缓存更新
@CacheEvict:定义清除缓存,触发缓存清除
@Caching:组合定义多种缓存功能
@CacheConfig:定义公共设置,位于class之上

三、结合缓存框架

  1. springCache:缓存体系的抽象实现
  2. caffeine:高性能进程缓存
  3. j2cache:两级 Java 缓存框架(一级基于内存,二级基于Redis)

四、核心代码

    @Override
    public CacheManager cacheManager() {
    
    
        // 引入配置
        Properties properties = load("/config/j2cache.properties");
        transfer(properties);
        J2CacheConfig config = J2CacheConfig.initFromConfig(properties);
        // 生成 J2CacheBuilder
        J2CacheBuilder j2CacheBuilder = J2CacheBuilder.init(config);
        // 构建适配器
        return new J2CacheSpringCacheManageAdapter(j2CacheBuilder, true);
    }

	@Bean("keyGenerator")
    public KeyGenerator cacheKeyGenerator(){
    
    //缓存key生成者cd
        return new CacheKeyGenerator();
    }

猜你喜欢

转载自blog.csdn.net/a251628111/article/details/109262082