【问题标题】:Does Gson have something like @JsonProperty for methods?Gson 是否有类似 @JsonProperty 的方法?
【发布时间】:2013-01-23 15:00:55
【问题描述】:

Jackson 有 @JsonProperty("name") 注解,可以应用到方法上——方法的返回值会被赋值给 JSON 中的 "name" 参数。

我发现 Gson 有 @SerializedName 注释,但不能与方法一起使用。有什么方法可以为 Gson 中的方法获取 @JsonProperty 功能?

【问题讨论】:

    标签: json jackson gson


    【解决方案1】:

    试试

    @SerializedName("serialized_fld_name")

    【讨论】:

      【解决方案2】:

      Gson 中的解决方案是一个名为 @SerializedName 的类似注解,您可以使用它来提供与源 JSON 匹配的名称。

      一个简单的例子如下所示:

      public class Message {
          @SerializedName("ID")
          private String id;
          @SerializedName("NFd")
          private int fileDescriptors;
      }
      

      Source

      【讨论】:

        【解决方案3】:

        不,没有。我记得,邮件列表中有一个来自核心开发人员的帖子,Gson 也不太可能得到如此增强。

        【讨论】:

          【解决方案4】:

          我对 Gson 有同样的问题,@SerializedName 对我没有帮助。所以我使用了 org.codehaus.jackson.map.ObjectMapper

          ObjectMapper mapper = new ObjectMapper();
          String responseJson = mapper.writeValueAsString(object);
          

          【讨论】:

            猜你喜欢
            • 2013-06-07
            • 2011-10-08
            • 1970-01-01
            • 1970-01-01
            • 2016-07-29
            • 2016-09-06
            • 2018-02-25
            • 2012-12-03
            • 1970-01-01
            相关资源
            最近更新 更多