Caching in Java con Caffeine

Mattepuffo's logo
Caching in Java con Caffeine

Caching in Java con Caffeine

Caffeine è una delle librerie in Java per il caching.

E' molto usata, anche in ambito web tipo con Spring Boot.

Se usate Maven:

<dependency>
    <groupId>com.github.ben-manes.caffeine</groupId>
    <artifactId>caffeine</artifactId>
    <version>3.1.8</version>
</dependency>

Qui sotto un esempio:

import com.github.benmanes.caffeine.cache.Cache;
import com.github.benmanes.caffeine.cache.Caffeine;

import java.util.Map;
import java.util.concurrent.TimeUnit;

public class Main {

  public static void main(String[] args) {
    Cache<Integer, String> cache = Caffeine.newBuilder()
        .expireAfterWrite(1, TimeUnit.MINUTES)
        .initialCapacity(100)
        .maximumSize(100)
        .build();

    cache.put(1, "valore 1");
    cache.put(2, "valore 2");

    Map<Integer, String> map = cache.asMap();
    map.forEach((key, value) ->
        System.out.println("Chiave: " + key + ", Valore: " + value)
    );

    System.out.println(cache.getIfPresent(1));
  }

}

Visualiziamo sia tutti i valori che uno solo passandogli la chiave.

Enjoy!


Condividi

Commentami!