Hello! 欢迎来到小浪资源网!


Spring Data Redis的redisTemplate.opsForList().leftPop()能否一次弹出多个元素?


Spring Data Redis的redisTemplate.opsForList().leftPop()能否一次弹出多个元素?

redistemplate.opsforlist().leftpop()支持传递个数吗?

redis 6.2 后,确实支持 lpop 命令一次弹出列表的多个值,例如:lpop id 3。

然而,对于这个问题,答案似乎与 spring data redis 版本有关。

答案:

使用 spring-data-redis-2.7.2 版本时,redistemplate.opsforlist().leftpop() 支持传递参数,即可以一次弹出列表中的多个值。

如下所示:

import org.springframework.data.redis.core.RedisTemplate;  public class RedisTemplateDemo {      public static void main(String[] args) {         // 这里假设您已经创建了一个 RedisTemplate 对象         RedisTemplate<String, String> redisTemplate = new RedisTemplate<>();          // 从列表中弹出一个元素         String value1 = redisTemplate.opsForList().leftPop("id");          // 从列表中弹出三个元素         List<String> values = redisTemplate.opsForList().leftPop("id", 3);     } }

相关阅读