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

Is updating a part of a value possible in Redis?

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

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

例如,如果我序列化一个类的对象

public class MyObject {

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

}

如果 MyObject 与 Redis 中的键相关联,我是否可以从该键仅更新 myObj2 字段?还是我先获取值,更新字段,然后再将其放入 Redis?

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

这是片段

    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))