我有一个 JSON 对象,例如
{
"Person":
{
"firstname" : null,
"secondname" : "Baeumer"
}
}
Run Code Online (Sandbox Code Playgroud)
和我的 POJO 实体
public class Person{
public String firstname = "";
public String lastname = "";
}
Run Code Online (Sandbox Code Playgroud)
现在,我喜欢反序列化(JSON -> POJO)并忽略null值以保留默认值""
GsonBuilder::serializeNulls只能以相反的方式工作(POJO -> JSON),但不能用于反序列化。
我不想为我的所有实体写作JsonDeserializers或写作。TypeAdapter
我的最后一个解决方案是使所有内容都是可选的,并将自定义的OptionalTypeAdapterFactory与自定义的OptionalAdapter一起使用并委托值。
有没有其他通用的解决方案?如果有类似的东西就好了GsonBuilder::deSerializeNulls。