【问题标题】:Is the SerializedName annotation necessary if the local field name is to be the same as the incoming data's field name?如果本地字段名称与传入数据的字段名称相同,是否需要 SerializedName 注释?
【发布时间】:2014-04-03 22:18:58
【问题描述】:

我正在修改我在网上找到的一些代码以满足我的目的。它正在获取具有列名称(例如“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() 注释是多余的/不必要的,其中名称保持不变(以取消保护无辜者)? IOW,gson 是否足够聪明,可以将传入的“Tippecanoe”与“Tippecanoe”字符串匹配?

【问题讨论】:

    标签: java android serialization


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-27
      • 1970-01-01
      • 2011-11-20
      相关资源
      最近更新 更多