代码改变世界

Gson中@SerializedName 注解使用

2021-07-02 17:15  方斌  阅读(798)  评论(0编辑  收藏  举报

当我们使用Gson解析json数据时都会创建一个对应实体类,有时候json数据里面的字段是java关键词或者json数据里面的字段太简单,我们想在实体类中自定义字段名,这时就可以用@SerializedName注解。将我们自定义的字段名与json数据里面的字段对应起来。

//json1
{
    "class":"1"
    "public":"2"
}

//json2
{
    "a":"1"
    "b":"2"
}

如 json1 中数据我们如果建立一个相同字段名的实体类显然是不可行的,因为class和public都是java语言中的关键字,@SerializedName注解就起到作用了。

public class Json1{

    @SerializedName("class")
    private String cla;
    @SerializedName("public") 
    private String pub;

}

如 json2 中的数据,我们可以直接建立对应字段名的实体类,但是这种以 a、b 来命名的方式显然不是很友好,我们可以使用@SerializedName注解来自定义字段名。

public class Json2{

    @SerializedName("a")
    private String cla;
    @SerializedName("b") 
    private String pub;

}

————————————————
版权声明:本文为CSDN博主「joh_hz」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lijueqing/article/details/80939750