是否可以在Redis中更新值的一部分?

时间:2016-04-28 13:33:21

标签: redis jedis

我必须在项目中使用Redis和Jedis,以便从生成的密钥快速访问某些数据。存储的值将是一些复杂的Java对象。

是否可以只更新此值的一部分,而不是之前获取它?

例如,如果我像这样序列化一个classe的对象

public class MyObject {

    private MySubObject1 myObj1;
    private MySubObject2 myObj2;
    private MySubObject3 myObj3;

}

如果MyObject与Redis中的密钥相关联,那么我可以从该密钥更新myObj2字段吗?或者让我先获取值,更新字段并将其重新放入Redis?

1 个答案:

答案 0 :(得分:3)

如果你想这样更新。您可以使用哈希而不是平键值存储。

这是片段

    hset("MyObject","myObj1",(serialized value of myobj1))
hset("MyObject","myObj2",(serialized value of myobj2)) ...

If you want to change myObj2 alone 

do hset("MyObject","myObj2",(new value))
相关问题