<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.0.xsd">
<cache alias="myCache">
<heap unit="entries">100</heap>
<expiry>
<ttl unit="seconds">60</ttl>
</expiry>
</cache>
</config>
import org.ehcache.Cache;
import org.ehcache.CacheManager;
import org.ehcache.config.builders.CacheConfigurationBuilder;
import org.ehcache.config.builders.CacheManagerBuilder;
public class DataCache {
private Cache<String, Object> cache;
public DataCache() {
CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder()
.withCache("myCache",
CacheConfigurationBuilder.newCacheConfigurationBuilder(String.class, Object.class)
.build())
.build();
cacheManager.init();
cache = cacheManager.getCache("myCache", String.class, Object.class);
}
public void put(String key, Object value) {
cache.put(key, value);
}
public Object get(String key) {
return cache.get(key);
}
public void remove(String key) {
cache.remove(key);
}
public void close() {
cacheManager.close();
}
}
public class Main {
public static void main(String[] args) {
DataCache dataCache = new DataCache();
dataCache.put("key1", "value1");
Object value = dataCache.get("key1");
System.out.println(value);
dataCache.remove("key1");
dataCache.close();
}
}