更新某些字段以防止覆盖

时间:2013-03-30 18:16:26

标签: java stackmob

我正在使用StackMob开发Android应用程序。现在我想要保存一个对象,但不是所有的属性让我们拿这个例子。

class A extends StackMobModel
{
    String UserOneInput;
    String UserTwoInput;
}

现在我有两个人同时使用一个A类实例。用户1将其信息放入UserOneInput和UserTwoInput中的用户2。现在,如果用户1保存命中信息,而用户2已经获取此对象,则情况将是

class A extends StackMobModel
{
    String UserOneInput = "User one his input";
    String UserTwoInput = null;
}

对于用户一,用户二有

class A extends StackMobModel
{
    String UserOneInput = null;
    String UserTwoInput = null;
}

现在,如果玩家2保存了他的数据,那么它就会保存,因为我们得到了

class A extends StackMobModel
{
    String UserOneInput = null;
    String UserTwoInput = "User two input";
}

用户1他的输入被覆盖。我可以在保存之前再次获取对象,但如果您在移动网络上使用它,延迟仍然可能导致同样的问题。 (用户2在使用提取和保存的时间之间保存他的信息)

我查看了javadoc并且只找到了一个可以用来选择某些字段的函数,但是它表示不能用于保存。 是否有这样的方法只保存类的某些字段?或者我应该使用一些不同的模型来防止覆盖?

1 个答案:

答案 0 :(得分:1)

该类不知道谁是所有者,以便知道要保存哪一个字符串 必须将此类分解为

class Answer {
    String answer;
    ....
}

class Question {
    Answer userOne;
    Answer userTwo;
    ....
}

每个用户都可以访问并保存自己的答案,而问题知道用户的答案。