1、配置类

@Configuration
@EnableCaching
public class CacheConfiguration {// implements CachingConfigurer {

    @Bean
    //@Override
    public CacheManager cacheManager() {
        EhCacheCacheManager cacheManager = new EhCacheCacheManager();
        cacheManager.setCacheManager(ehCacheManagerFactoryBean().getObject());
        return cacheManager;
    }

    @Bean
    //@Override
    public KeyGenerator keyGenerator() {
        return new SimpleKeyGenerator();
    }

    @Bean
    public EhCacheManagerFactoryBean ehCacheManagerFactoryBean() {
        EhCacheManagerFactoryBean ehCacheManagerFactoryBean = new EhCacheManagerFactoryBean();
        ehCacheManagerFactoryBean.setConfigLocation(new ClassPathResource("ehcache.xml"));
        ehCacheManagerFactoryBean.setCacheManagerName("messageCache");
        ehCacheManagerFactoryBean.setShared(true);
        return ehCacheManagerFactoryBean;
    }

//    @Override
//    public CacheResolver cacheResolver() {
//        // TODO Auto-generated method stub
//        return new SimpleCacheResolver();
//    }
//
//    @Override
//    public CacheErrorHandler errorHandler() {
//        // TODO Auto-generated method stub
//        return new SimpleCacheErrorHandler();
//    }
    
}

 

2、位于resource目录下的配置文件ehcache.xml

<?xml version="1.0" encoding="UTF-8"?>
<ehcache>
    <defaultCache eternal="true" maxElementsInMemory="100" overflowToDisk="false" />
    <cache name="messageCache" maxElementsInMemory="10" eternal="true" overflowToDisk="false" />
</ehcache>

 

3、Cache对象

    @Cacheable(value="messageCache")
    public Integer testCashe( String data ) {
        return new Integer(data.length());
    }

 

注意:Cache对象的value参数要与ehcache.xml配置文件中对应一致。

 

相关文章:

  • 2021-06-29
  • 2020-07-21
  • 2022-12-23
  • 2022-12-23
  • 2021-07-17
  • 2022-02-07
  • 2022-12-23
  • 2021-05-25
猜你喜欢
  • 2022-12-23
  • 2021-11-26
  • 2021-06-14
  • 2022-02-09
  • 2019-10-23
  • 2022-01-12
  • 2021-05-23
相关资源
相似解决方案