【发布时间】:2016-09-29 11:46:45
【问题描述】:
我正在尝试序列化一个对象。我有以下结构:
Class A{
String aField1;
String aField2;
B bObj;
}
Class B{
String bField1;
String bField2;
String bField3;
}
我正在尝试序列化 A 类和 B 类对象以将它们发送到服务器。 当我序列化 Class A 对象时,它给了我
{
aField1: "abc",
aField2: "def",
B: {
bField1: "mnp",
bField2: "qrt",
bField3: "xyz",
}
}
并序列化Class B obj:
{
bField1: "mnp",
bField2: "qrt",
bField3: "xyz",
}
但我想要这样的 Class A 对象:
{
aField1: "abc",
aField2: "def",
B: {
bField1: "mnp"
}
}
我目前正在使用 GSON 库来完成此操作。 我想在与服务器交互时删除额外的键值对。 我该怎么做?
【问题讨论】:
-
使用
@Expose注解github.com/google/gson/blob/master/…准确选择要序列化的字段 -
我在序列化 B 类 obj 时需要所有这些字段。
-
使用排除策略是解决这个问题的方法。 stackoverflow.com/a/4803346/2920114
标签: android serialization gson deserialization