Expiry time @cacheable spring boot

nole picture nole · Jan 15, 2015 · Viewed 53.5k times · Source

I have implemented a cache and now I want to add an expiry time.

How can I set an expiry time in spring boot with @Cacheable?

This is a code snippet:

@Cacheable(value="forecast",unless="#result == null")

Answer

Atum picture Atum · Jul 8, 2016

I use life hacking like this

    @Configuration
    @EnableCaching
    @EnableScheduling
    public class CachingConfig {
        public static final String GAMES = "GAMES";
        @Bean
        public CacheManager cacheManager() {
            ConcurrentMapCacheManager cacheManager = new ConcurrentMapCacheManager(GAMES);

            return cacheManager;
        }

        @CacheEvict(allEntries = true, value = {GAMES})
        @Scheduled(fixedDelay = 10 * 60 * 1000 ,  initialDelay = 500)
        public void reportCacheEvict() {
            System.out.println("Flush Cache " + dateFormat.format(new Date()));
        }
    }