<dependency> <groupId>com.github.ben-manes.caffeine</groupId> <artifactId>caffeine</artifactId> <version>2.9.2</version> </dependency> groovy dependencies { implementation 'com.github.ben-manes.caffeine:caffeine:2.9.2' } Cache<String, Object> cache = Caffeine.newBuilder() .build(); CacheLoader<String, Object> cacheLoader = new CacheLoader<String, Object>() { @Override public Object load(String key) { return fetchDataFromDatabase(key); } }; Cache<String, Object> cache = Caffeine.newBuilder() .maximumSize(1000) .expireAfterWrite(10, TimeUnit.MINUTES) .build(cacheLoader); import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.CacheLoader; import com.github.benmanes.caffeine.cache.Caffeine; import java.util.concurrent.TimeUnit; public class CaffeineCacheExample { public static void main(String[] args) { CacheLoader<String, Object> cacheLoader = new CacheLoader<String, Object>() { @Override public Object load(String key) { return fetchDataFromDatabase(key); } }; Cache<String, Object> cache = Caffeine.newBuilder() .maximumSize(1000) .expireAfterWrite(10, TimeUnit.MINUTES) .build(cacheLoader); String key = "exampleKey"; Object value = cache.get(key, k -> fetchDataFromDatabase(k)); System.out.println(value); } private static Object fetchDataFromDatabase(String key) { return "Data for key: " + key; } }


上一篇:
下一篇:
切换中文