java 使用 jedis 操作redis 不能添加对象。也就是一条数据、

发布于 2021-11-25 15:58:43 字数 323 浏览 801 评论 3

redis> HMSET pet dog "doudou" cat "nounou"    # 一次设置多个域
OK

redis> HMGET pet dog cat fake_pet             # 返回值的顺序和传入参数的顺序一样
1) "doudou"
2) "nounou"
3) (nil)

上面的语法 ,只能添加  一个  dog “doudou”

 但是我现在需要添加  dog  1、  “doudou”、 zs 90 

这是一整条数据,是一个对象。。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

自此以后,行同陌路 2021-11-28 15:41:17

将对象序列化了。就可以存进去了,你可以使用MessagePack或者protobuf

孤独患者 2021-11-28 14:17:23

redis是基于key-value设计的,不能直接映射到你的业务逻辑中的数据结构,可以有多种设计方式来实现你要的功能:

1)将整个数据转成一个byte数组或string,这一类的有很多种方法,比如protocBuf、thift、json等等。这样的好处是一存一取都是整个数据。

2)将整个dog数据变成一个hashmap,然后HMSET dog count 1 name doudou zs 90。但是看你贴的那部分代码,似乎还需要知道有哪些pet,那可以在sadd pet dog。

3)更简单粗暴的方法就是用足够的信息构造属性的key,比如set pet-dog-name doudou, set pet-dog-zs 90

秋意浓 2021-11-25 22:34:15

dog对应的value只能存放string,不能存放对象

不过可以把整条数据转换成json格式,存入dog对应的value中即可

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文