<dependency>
<groupId>org.ehcache</groupId>
<artifactId>ehcache</artifactId>
<version>3.9.4</version>
</dependency>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.ehcache.org/v3"
xsi:schemaLocation="http://www.ehcache.org/v3 http://www.ehcache.org/schema/ehcache-core-3.9.xsd">
<cache alias="myCache">
<resources>
<heap unit="entries">100</heap>
<offheap unit="MB">10</offheap>
</resources>
<expiry>
<ttl unit="seconds">60</ttl>
</expiry>
</cache>
</config>
import org.ehcache.Cache;
import org.ehcache.CacheManager;
import org.ehcache.config.builders.CacheManagerBuilder;
public class MyApplication {
public static void main(String[] args) {
CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder()
.withCache("myCache", CacheConfigurationBuilder.newCacheConfigurationBuilder(
String.class, Integer.class,
ResourcePoolsBuilder.heap(100).offheap(10, MemoryUnit.MB))
.withExpiry(ExpiryPolicyBuilder.timeToLiveExpiration(Duration.ofSeconds(60))))
.build();
cacheManager.init();
Cache<String, Integer> myCache = cacheManager.getCache("myCache", String.class, Integer.class);
myCache.put("key1", 10);
myCache.put("key2", 20);
Integer value1 = myCache.get("key1");
Integer value2 = myCache.get("key2");
cacheManager.close();
}
}