Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >用Scala将Set对象存储在Redis数据库中

用Scala将Set对象存储在Redis数据库中
EN

Stack Overflow用户
提问于 2014-02-04 11:17:37
回答 2查看 1.3K关注 0票数 0

我想用Scala在Redis中存储一套Ints

我有这个密码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
val redis = new RedisClient("localhost", 6379)

val mySet = Set(4,5,6,7,8)

redis.set("myKey", mySet)
redis.get("myKey")

它返回一个字符串:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
res1: Option[String] = Some(Set(5, 6, 7, 8, 4))

我如何做redis以一种有效的方式存储我的集,并返回它而不是字符串?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-04 11:20:00

如果您想提高效率,可以对set使用Redis命令: SADD / SMEMBERS。使用GET / SET,这是字符串命令,这意味着它们接受并返回字符串。

另外,我不熟悉Scala驱动程序,但我怀疑它的SMEMBERS实现将返回一个数组/字符串集,即使您将值设置为整数。这是因为Redis协议是基于文本的,一切都是以字符串的形式传递的。话虽如此,scala驱动程序可能会变得很聪明,并尝试为您转换值,我不知道。但如果你有麻烦,别惊讶。

票数 1
EN

Stack Overflow用户

发布于 2014-02-04 21:15:37

SET/GET用于在您正在使用的redis.If中设置和获取字符串

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
val mySet = Set(4,5,6,7,8)    
redis.set("myKey", mySet)

然后,redis将接受"myset“变量中的值作为字符串类型。如果您想存储一个集合,然后使用以下命令,您需要单独地给出set的值,而不是在变量中(我这样做)。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
redis.SADD("myKey",4,5,6,7)

用于从redis获取集合的值。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
redis.SMEMBERS("myKey")

如果你用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
val redis = new RedisClientPool("localhost", 6379)

而不是

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
val redis = new RedisClient("localhost", 6379)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21561393

复制
相关文章
set中如何存储自定义对象?
假设你已经在C++中使用过set,那么你应该知道,set中存储的元素是去重的。比如:
编程珠玑
2020/03/11
1.9K0
在Cookie中存储对象
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/details/46955119
DannyHoo
2018/09/13
3.8K0
Redis:11---Set对象
集合类型 (Set) 是一个无序并唯一的键值集合。它的存储顺序不会按照插入的先后顺序进行存储。
用户3479834
2021/02/03
1K0
Redis:11---Set对象
将所有对象存到数据库中在Shop.m中
如果将字典或数组直接存储在数据库中,会将数组或字典转化成字符串,所以可以使用归档与反归档的方法将数据进行编码和解码成二进制数据进行存储,而在数据库中需要使用blob类型存储二进制数据。
hrscy
2018/08/30
1.3K0
scala(十六) Set
Set 特性 不重复、无序 不可变set 创建Set& apply方式创建 val set=Set[Int](1,2,3,4,5) 查看setApi 进入 scala $ scala Welcome to Scala 2.12.10 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_172). Type in expressions for evaluation. Or try :help. scala> val set=Set[Int](1,2,3,4
用户1483438
2022/04/20
3470
Redis学习笔记(六)Redis数据存储类型之set
​ (1)添加数据 sadd key member1 member2…
萌萌哒的瓤瓤
2020/08/26
3400
【redis】02-redis持久化存储以及对象存储
redis存储对象主要有两种方式: (1)采用json序列化成字符串的方式进行存储 (2)采用二进制的方式进行存储
envoke
2020/09/17
3.5K0
【redis】02-redis持久化存储以及对象存储
Scala对象
如果有一个class,还有一个与class同名的object,那么就称这个object是class的伴生对象,class是object的伴生类
羊羽shine
2019/07/31
2850
Redis学习笔记(七)Redis数据存储类型之sorted_set
​ (1)添加数据 zadd key score1 member1 score2 member2…
萌萌哒的瓤瓤
2020/08/26
3010
Redis Set
Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
只喝牛奶的杀手
2019/08/26
4420
Redis Set
SDS趋势之二:对象存储将替代文件存储
对象存储(Object Storage)是综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了高可靠性、跨平台性以及安全的数据共享的存储体系结构。
DevinGeng
2019/04/09
1K0
SDS趋势之二:对象存储将替代文件存储
SDS趋势之二:对象存储将替代文件存储
对象存储(Object Storage)是综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了高可靠性、跨平台性以及安全的数据共享的存储体系结构。
DevinGeng
2019/04/09
1.2K0
SDS趋势之二:对象存储将替代文件存储
Redis Set
既然是操作 Set,那么方法自然是 opsForSet() ,每种数据类型都有自己的操作方法。
摸鱼的G
2023/02/22
4770
spring cloud config将配置存储在数据库中
Spring Cloud Config Server最常见是将配置文件放在本地或者远程Git仓库,放在本地是将将所有的配置文件统一写在Config Server工程目录下,如果需要修改配置,需要重启config server;放在Git仓库,是将配置统一放在Git仓库,可以利用Git仓库的版本控制。本文将介绍使用另外一种方式存放配置信息,即将配置存放在Mysql中。
方志朋
2019/05/26
1.9K0
搞定 Redis 数据存储原理,别只会 set、get 了
在上一篇通过源码编译构建出可调式环境之后,想必你想更深入了解我的整体架构。当你熟悉我的整体架构和每个模块,遇到问题才能直击本源,直捣黄龙,一笑破苍穹。
码哥字节
2023/01/04
4450
搞定 Redis 数据存储原理,别只会 set、get 了
[日常] Redis中set集合的使用思考
公司部门同事有个需求,就是需要把当前另一个部门a中存储的数据全部导出来,自己当前业务b的数据全部导出来,两个要取一下差集,把a中存在,b中不存在的记下来,要去调用某接口把对应的文件删除。这个我感觉可以使用redis的集合来进行操作,但是考虑到数据量特别大,文件有200G,内存估计不够用,暂时还不知道咋整。
唯一Chat
2019/10/23
8550
数据库的存储系列———将图片存储到数据库
在很多时候我们都使用数据库才存储我们的数据,然而我们通常在数据库里面存放的数据大多都支持数或者是一些字符,那么如果我们想在数据库里面存放图片,那么应该要怎么做的?
全栈程序员站长
2022/09/14
3.5K0
scala中的伴生类和伴生对象
由于static定义的类和对象破坏了 面向对象编程的规范完整性,因此scala 在设计之初就没有static关键字概念,类相关的静态属性都放在伴生对象object中。
从大数据到人工智能
2023/04/27
9120
将.sql文件中的数据库结构和数据存储入数据库中
mysql>source C:\Users\Duan\Desktop\projectgo.sql  (直接回车就行,不需要以分号结尾)
克虏伯
2019/04/15
3.2K0
怎么将数据迁移到对象存储OSS?
用户希望将历史数据迁移到OSS上的用户目标存储桶。需要迁移的源数据可能来自某个OSS桶,也可能来自本地或第三方云存储(例如腾讯云COS)。等等,HTTP等。
用户7261497
2020/06/24
6.1K0

相似问题

用于存储对象的redis hset和set。

12

将regEx存储在set对象中?

11

将set存储为redis中的哈希值

11

在Redis中存储对象集合

10

在redis中存储对象属性

32
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文