将json映射改为单例类

时间:2017-05-28 09:51:20

标签: android json retrofit2

我正在尝试将从改装服务收到的数据映射到单件类。似乎因为当改装将json映射到我的对象时没有调用full join静态方法,INSTANCE变量没有初始化,下次我调用$query="UPDATE `users` SET `email`= ? WHERE `email`= ?"; $stmt = $db->prepare($query); $stmt->bind_param('ss',$_POST['emailfrom'],$_POST['emailto']); $stmt->execute(); $stmt->close(); 时,我得到的是具有默认值的对象,而不是我从改造中得到的对象。如何将数据从改造中保存到单件类中。

P.S。我需要这个,因为我需要在ViewPager的第二个片段中使用我在第一个片段模型中收到的相同对象。

我的单身人士课程:

getInstance()

好的,如果有人需要知道我如何使用改装:

MyClass.getInstance()

1 个答案:

答案 0 :(得分:2)

我不认为这是最好的选择,但你可以这样做:

public final MySingletonClass {

    //private final fields;

    private MyRetrofitObject foo; 

    private MySingletonClass() {
        //default initialization fields
    }


    public static MySingletonClass getInstance() {
        return MySingletonClassSingletonHelper.INSTANCE;
    }

    private static class MySingletonClassSingletonHelper {
        private static final MySingletonClass INSTANCE = new MySingletonClass();
    }

    //getters

    public void setObject(MyRetrofitObject foo) {
         this.foo = foo;
    }

}

当你从Retrofit返回对象时,你将它设置在你的单身人士身上。

 INSTANCE.setObject(fooFromRetrofit);

这将对象解析与内存存储

分开