gpt4 book ai didi

java - Gson 在序列化期间添加字段

转载 作者:IT老高 更新时间:2023-10-28 21:14:27 25 4
gpt4 key购买 nike

我找不到在 Gson 序列化期间添加自定义字段的简单方法,我希望其他人可以提供帮助。

这是一个展示我的问题的示例类:

public class A {
String id;
String name;
...
}

当我序列化 A 类时,我想返回如下内容:

{ "id":"123", "name":"John Doe", "url_to_user":"http://www.example.com/123" }

其中 url_to_user 不存储在我的 A 类实例中,但可以使用 A 类实例中的数据生成。

有没有一种简单的方法可以做到这一点?我宁愿避免仅仅为了添加一个字段而编写整个序列化程序。

最佳答案

使用 Gson.toJsonTree 获取一个 JsonElement,您可以与它进行动态交互。

A a = getYourAInstanceHere();
Gson gson = new Gson();
JsonElement jsonElement = gson.toJsonTree(a);
jsonElement.getAsJsonObject().addProperty("url_to_user", url);
return gson.toJson(jsonElement);

关于java - Gson 在序列化期间添加字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13024749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com