gson 将java第三方对象转换为具有不同名称的json

xhv8bpkk  于 2022-11-06  发布在  Java
关注(0)|答案(1)|浏览(170)

我使用的是facebook sdk,而对象字段的名称经常与它们对应的getter和setter不同,因此我无法用gson.fromJson将json对象从frontend转换为fb对象。有没有方便的方法可以做到这一点?
例如,前端向后端发送带有对象的请求:

export class Campaign {
    fieldName: string;
}

但fb对象看起来像这样:

public class Campaign extends APINode {
  @SerializedName("name")
  private String mName= null;

  public APIRequestUpdate setName (String name) {
      this.setParam("name", name);
      return this;
  }
  public String getFieldName() {
      return mName;
  }
...
}
yeotifhr

yeotifhr1#

您可以遵循适配器设计模式。
基本上,用你想要的正确字段名创建一个类,你可以创建名为“fromFacebookCampaign”和“toFacebookCampaign”的函数来“转换你的字段”,在这些函数中你可以手动Map相应的字段。

相关问题