Gson有类似于@JsonProperty的方法吗?

qxgroojn  于 2022-11-19  发布在  其他
关注(0)|答案(4)|浏览(210)

Jackson有@JsonProperty(“name”)注解,它可以应用于方法--方法的返回值将被赋给JSON中的“name”参数。
我发现Gson有@SerializedName注解,但是它不能用于方法。有没有办法为Gson中的方法获取@JsonProperty功能?

zyfwsgd6

zyfwsgd61#

尝试
@序列化名称(“序列化文件名”)

axkjgtzd

axkjgtzd2#

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

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

Source

umuewwlo

umuewwlo3#

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

dfddblmv

dfddblmv4#

我在使用Gson时也遇到了同样的问题,@SerializedName对我的情况没有帮助,所以我使用了org.codehaus.Jackson.map.ObjectMapper

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

相关问题