我正在尝试将从改装服务收到的数据映射到单件类。似乎因为当改装将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()
答案 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);
这将对象解析与内存存储
分开