如果本地字段名称与传入数据的字段名称相同,是否必须使用SerializedName注释?

时间:2014-04-03 22:18:58

标签: java android serialization

我正在调整我在网上找到的一些代码以达到我的目的。它使用colum名称获取数据,例如“william_henry_harrison”,但使用本地名称,例如“Tippecanoe”:

public class Result {
    @SerializedName("william_henry_harrison")
    public String Tippecanoe;
    @SerializedName("john_tyler")
    public String TraitorToHisCountry;
. . .

但就我而言,我不需要不同的列/字段名称。现在我的代码是这样的:

public class Result {
    @SerializedName("Tippecanoe")
    public String Tippecanoe;
    @SerializedName("TylerToo") // for my great nephew Tyler ("Tyger")
    public String TylerToo;
. . .

...但是@SerializedName()注释在后一种情况下是多余的/不必要的,其中名称保持不变(为了解除对uninnocent的保护)? IOW,gson足够智能,可以将传入的“Tippecanoe”与“Tippecanoe”字符串相匹配吗?

1 个答案:

答案 0 :(得分:4)

不,如果变量名称与输入名称匹配,则无需提供注释。在某些情况下,您可能希望将变量命名为输入之外的其他变量,这是您需要注释来帮助gson进行映射的情况。