我正在使用spring-data-redis-1.6.2.RELEASE.jar的RedisCache.putIfAbsent
操作来原子地设置元素值以及ttl
值。
这是我生成缓存管理器实例的方法
public CacheManager dsyncCacheManager() {
RedisCacheManager redisCacheManager = new RedisCacheManager( redisTemplate() );
redisCacheManager.setDefaultExpiration(defaultExpireTimeSeconds);
return redisCacheManager;
}
这就是我调用方法的方法
cache.putIfAbsent( key, value );
但是,当我在redis中检查给定密钥的ttl
时,返回的值为-1
,而不是我使用的预期ttl
。