如何将咖啡因缓存设置为不过期

时间:2020-06-05 11:05:03

标签: java spring-boot caffeine

我有一个简单的spring boot应用程序,正在使用Caffeine进行缓存。我正在使用Spring Boot属性对其进行配置。我如何发送它不过期?

1 个答案:

答案 0 :(得分:1)

您如何将它们设置为足够高的值,就像他们在这里所做的那样。 https://github.com/ben-manes/caffeine/blob/e8ff6d3261e7f5666d2b486352cc04b2874d70ed/caffeine/src/main/java/com/github/benmanes/caffeine/cache/Async.java

您可以这样实现自己的有效期。

Caffeine
            .newBuilder()
            .expireAfter(new Expiry<String, String>() {
                @Override
                public long expireAfterCreate(@Nonnull String key, @Nonnull String value,
                                              long currentTime) {
                    //return Duration.ofDays(1).toNanos();
                    return   Long.MAX_VALUE;
                }

                @Override
                public long expireAfterUpdate(@Nonnull String key, @Nonnull String value, long currentTime,
                                              long currentDuration) {
                    return currentDuration;
                }

                @Override
                public long expireAfterRead(@Nonnull String key, @Nonnull String value, long currentTime,
                                            long currentDuration) {
                    return currentDuration;
                }
            }).build()