是否可以仅覆盖一个密钥的GSON解析?
e.g。
Parse the following JSON:
{
"a" : "data",
"b" : "more data",
}
进入这个班级:
class Foo {
String a;
String b;
}
但转变" b"在反序列化过程中变为大写?
我想避免编写自定义反序列化程序并手动解析所有值,因为这是一个很大的类。
由于
答案 0 :(得分:0)
在Gson中,您可以使用@SerializedName属性
为密钥指定多个名称public static void main(String[] args) {
String str1="{" +" \"a\" : \"data\"," +" \"B\" : \"more data\"}";
String str2="{" +" \"a\" : \"data\"," +" \"b\" : \"more data\"}";
Gson gson=new Gson();
//result will be same for both str1 and str2
Foo obj=gson.fromJson(str1, Foo.class);
System.out.println(obj.getB());
}
class Foo {
String a;
@SerializedName(value="b", alternate={"B"})
String b;
//setter and getters
}