Sử dụng GSON làm cách nào để thêm tên lớp của Danh sách vào chuỗi json đã xuất của tôi? Tôi đã xem qua các api và đã bỏ lỡ bất kỳ tài liệu tham khảo để làm điều này. Tôi đang sử dụng GsonBuilder trong mã thực của mình nhưng cũng không thấy bất kỳ tùy chọn nào cho nó.gson - bao gồm tên lớp khi tuần tự hóa java pojo -> json
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);
}
}
Điều này cho phép đầu ra sau đây:
json = [{ "tên": "Alice"}, { "tên": "Bob"}]
thế nào sao tôi đạt được kết quả sau? hoặc tương tự.
json = { "người": [{ "tên": "Alice"}, { "tên": "Bob"}]}
hoặc
json = [{"người": {"tên": "Alice"}}, {"người": {"tên": "Bob"}}]
Hy vọng đó là điều nhỏ nhặt mà tôi vừa bỏ lỡ. Cảm ơn trước.
Giải pháp đơn giản nhất có thể tạo ra một số lớp khác, trong đó sẽ chứa một số biến (hoặc danh sách của loại người) với tên "người". – Serhiy
Câu hỏi này đề cập đến cùng một vấn đề như http://stackoverflow.com/questions/4623329/gson-serialize-pojo-with-root-value-included và câu trả lời được chấp nhận cũng khá giống nhau. – user905686