gpt4 book ai didi

java - gson - 序列化 java pojo 时包含类名 -> json

转载 作者:搜寻专家 更新时间:2023-10-31 20:04:21 24 4
gpt4 key购买 nike

使用 GSON如何将我的列表的类名附加到输出的 json 字符串?我浏览了 api并错过了执行此操作的任何引用。我正在使用 GsonBuilder在我的真实代码中,但也没有看到任何选项。

public class Person {
String name;

public Person(String name){
this.name = name;
}

public static void main(String [] args){
Person one = new Person("Alice");
Person two = new Person("Bob");

List<Person> people = new ArrayList<Person>();
people.add(one);
people.add(two);

String json = new Gson(people);
}
}

这给出了以下输出:

json = [{"name": "Alice"},{"name": "Bob"}]

如何实现以下输出? 或类似的东西。

json = {"person":[{"name": "Alice"},{"name": "Bob"}]}

json = [{"person":{"name": "Alice"}},{"person":{"name": "Bob"}}]

希望这是我刚刚错过的微不足道的事情。提前致谢。

最佳答案

我不知道你是否还对这个答案感兴趣,但你可以做的是:

public static void main(String [] args){
Person one = new Person("Alice");
Person two = new Person("Bob");

List<Person> people = new ArrayList<Person>();
people.add(one);
people.add(two);

Gson gson = new Gson();
JsonElement je = gson.toJsonTree(people);
JsonObject jo = new JsonObject();
jo.add("person", je);
System.out.println(jo.toString()); //prints {"person":[{"name": "Alice"},{"name": "Bob"}]}
}

关于java - gson - 序列化 java pojo 时包含类名 -> json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13272516/

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