Spring redisTemplate,如何通过访问redis一次判断key不存在或者value为空?

Far*_*Liu 5 java spring redis

我正在使用 java spring redisTemplate 访问redis服务器。我想通过键从redis获取值。该键可能不存在,或者存在但值为空。但redisTemplate总是返回null。

我可以使用此代码来确定密钥是否存在:

redisTemplate.hasKey("name");
Run Code Online (Sandbox Code Playgroud)

但问题是我需要再次访问redis服务器才能获取值:

//it always returns null when key doesn't exist or value is empty
var v = redisTemplate.opsForValue().get("name");
Run Code Online (Sandbox Code Playgroud)

因为我希望步骤 1 和步骤 2 是原子的。如果我首先使用步骤1中的代码来获取现有或不存在的代码,那么在执行步骤2时它可能会发生变化。我认为它性能更好的另一个原因。

那么你能帮我一下吗?谢谢你!