spring boot整合ehcache

依赖


  org.springframework
  spring-context-support


  net.sf.ehcache
  ehcache
  2.8.3

缓存配置管理类

@Configuration
@EnableCaching
public class CacheConfiguration {

    @Bean
    public EhCacheManagerFactoryBean ehCacheManagerFactoryBean(){
      EhCacheManagerFactoryBean cacheManagerFactoryBean = new EhCacheManagerFactoryBean();
      cacheManagerFactoryBean.setConfigLocation(new ClassPathResource("ehcache.xml"));
      cacheManagerFactoryBean.setShared(true);
      return cacheManagerFactoryBean;
    }
   
    @Bean
    public EhCacheCacheManager ehCacheCacheManager(EhCacheManagerFactoryBean bean){
      return new EhCacheCacheManager(bean.getObject());
    }  
}

ehcache.xml




    
    

    
    
    
    
    
    
    
    
    
    

    
    
    
    

CacheService

@Service("cacheService")
public class CacheServiceImpl implements CacheService {

    //通过配置的名字获取指定缓存策略
    public static final String CACHE_NAME = "local";

    @CachePut(value = CACHE_NAME, key = " 'key_' + #productInfo.getId()")
    @Override
    public ProductInfo saveLocalCache(ProductInfo productInfo) {
        return productInfo;
    }

    @Cacheable(value = CACHE_NAME, key = " 'key_' + #id")
    @Override
    public ProductInfo getLocalCache(Long id) {
        //查到会自动返回,查不到返回null
        return null;
    }
}

 

你可能感兴趣的:(Java)