java - 我可以在 redis 中多次放置整个列表值而不是 "RightPush"一个项目吗?

标签 java nosql redis spring-data-redis

我想把整个列表放到redis中,但是我发现只有RightPush方法可以使用。为此,我需要遍历列表中的所有项目并多次RightPush 每个项目。我认为这不是明智的做法,而且会降低性能。

我可以将整个列表值放入一次而不是在 Redis 中多次 RightPush 一个项目吗?

最佳答案

Redis RPUSH command支持多个参数 - 所以你可以发出:

RPUSH myList 1 2 3 4 5 6 7 8 9 10

命令(例如),而不是发出 10 个命令:

RPUSH myList 1
RPUSH myList 2
# ... etc. ...

查看文档,看起来可能可以使用 org.springframework.data.redis.support.collections.DefaultRedisList 的实例(啊,Java) - 它有一个采用CollectionaddAll 方法。

但是,如果 DefaultRedisList 是使用 redis.core.ListOperations 实现的,那么您可能需要自己实现 RPUSH key value1 [...valueN ]

关于java - 我可以在 redis 中多次放置整个列表值而不是 "RightPush"一个项目吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16704972/

相关文章:

java - 在 Eclipse 中打开 Maven POM 文件依赖层次结构时出错 - "Project read error"

MySQL 实验室 JSON native 类型 : How SUM the result of an array returned by jsn_extract?

c# - 将 Redis 与 SignalR 结合使用

redis - 为什么Redis不提供批量设置多个key的过期时间操作?

java.lang.ClassCastException : [Ljava. lang.Long;无法转换为 java.lang.Long

java - 如何在Java中将11位十六进制数转换为唯一的11位十进制数?

java - 如何通过自动化 headless 浏览器中的窗口弹出窗口将文件上传到网络浏览器(selenium webdriver)

javascript - 使用 JS 的 Firebase - 努力更新值(如果存在)或添加(如果不存在)

sql - mongo中的外键?

java - Spring Security 与 Redis 的并发控制