gpt4 book ai didi

java - 配置Gson改变json中的key

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:10:38 24 4
gpt4 key购买 nike

我正在考虑在我的网络服务中使用 Gson,但我观察到 Gson 返回类中变量的名称作为 Json 格式的键。例如

interface Animal{

}
class Dog implements Animal{
public String name, age;
@Override
public String toString() {
return name+"\t" + age;
}
}

Dog对象的Json如下:

{"name":"Tommy","age":"12"}

现在,我的问题是因为 Json 中的 Key(nameage) 依赖于变量的名称,所以如果我的变量名称改变,那么 key 也会改变。然后,只要网络服务中的变量名称发生变化,此网络服务的客户端就必须更改代码。

他们的方法也是如此,这样我就可以用键名映射每个变量。例如,将 name 映射到 nameOfDog 并将 age 映射到 ageOfDog,这样 json 将看起来像

{"nameOfDog":"Tommy","ageOfDog":"12"}

最佳答案

是的,使用 the SerializedName annotation .

因为它有一个@Target(value=FIELD),它可以(只)应用于实例字段。

所以:

@SerializedName("nameOfDog")
String name;

(在 Jackson 中是 @JsonProperty("nameOfDog"))

关于java - 配置Gson改变json中的key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22568347/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com