首页 > 文章列表 > Spring Data Redis的redisTemplate.opsForList().leftPop()能否一次弹出多个元素?

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

106 2024-12-20

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);
    }
}
来源:1733053534