我正在使用Java Spring RedisTemplate访问Redis服务器。我想通过键从Redis获取值。该键可能没有退出,或者它已经存在,但是该值为空。但是redisTemplate总是返回null。
我可以使用以下代码来确定密钥是否存在:
redisTemplate.hasKey("name");
但是问题是我需要再次访问redis服务器以获取值:
//it always returns null when key doesn't exist or value is empty
var v = redisTemplate.opsForValue().get("name");
因为我希望步骤1和步骤2是原子的。如果我首先在步骤1中使用代码来使代码不存在,则在执行步骤2时可能会更改它。另一个我认为它性能更好的原因。
那你能帮我吗?谢谢!