java编程之Ehcache3.x 缓存过期时间Java配置demo

位置:首页>文章>详情   分类: 教程分享 > Java教程   阅读(2595)   2024-04-17 12:33:21
Ehcache3.x 缓存过期时间Java配置demo

1.maven加入ehcache依赖
<dependency>
      <groupId>org.ehcache</groupId>
      <artifactId>ehcache</artifactId>
      <version>3.3.0</version>
</dependency>


2.demo案例
 
import java.util.concurrent.TimeUnit;

import org.ehcache.Cache;
import org.ehcache.CacheManager;
import org.ehcache.config.CacheConfiguration;
import org.ehcache.config.builders.CacheConfigurationBuilder;
import org.ehcache.config.builders.CacheManagerBuilder;
import org.ehcache.config.builders.ResourcePoolsBuilder;
import org.ehcache.expiry.Duration;
import org.ehcache.expiry.Expirations;

public class EcacheTest {

    public static void main(String[] args) {
        // 构建一个缓存管理器
        CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder().build(true);
        // cacheManager.init();
        // cacheConfiguration -100个换成最大,缓存过期时间4秒
        CacheConfiguration<String, String> cacheConfiguration = CacheConfigurationBuilder
                .newCacheConfigurationBuilder(String.class, String.class, ResourcePoolsBuilder.heap(100))
                .withExpiry(Expirations.timeToLiveExpiration(Duration.of(4, TimeUnit.SECONDS))).build();
        // 根据配置创建一个缓存容器
        Cache<String, String> myCache = cacheManager.createCache("myCache", cacheConfiguration);
        // 设置一个值
        myCache.put("testKey", "testValue");
        // 循环直到数据过期 否包含该key
        while (myCache.containsKey("testKey")) {
            try {
                System.out.println("值:" + myCache.get("testKey"));
                Thread.sleep(2000);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        System.out.println("缓存已过期");
        cacheManager.close();

    }

}


 
标签2: java编程 ehcache
地址:https://www.leftso.com/article/126.html

相关阅读

java编程之Ehcache3.x 缓存过期时间Java配置demo
       Ehcache 3.6 配置缓存过期时间,上一次写Ehcache缓存是3.3.0版本,没想到3.6.X的时候3.3版本的方式也弃用了       3.3版本ehcache参考:  ...
Java编程软件有哪些?常用Java编程软件下载、安装和使用说明
Java编程中Spring Boot整合RabbitMQ实现消息中间件RabbitMQ的使用
Java编程之spring boot shiro redis整合基于角色和权限的安全管理,Java编程,spring boot,shiro,权限控制
java编程之java jwt token使用,autho0的Java-jwt框架使用,java编程,java-jwt
Java编程中纯jdk java方式编写webservice服务(server)和客服端(client)
Java编程之java static关键字,Java编程,static关键字
Java编程中使用POI框架以模板方式导出Excel文件,适合Excel比较复杂的情况
java编程中float或double类型保留2位/n位小数使用BigDecimal进行处理