使用GSON with object打印JSON对象

nhaq1z21  于 2022-11-06  发布在  其他
关注(0)|答案(2)|浏览(231)

在阅读文档后,关于GSON的一些问题。下面是我对JSON的一些看法:

var json = { 
     id: "person1", 
     name: "person 1", 
     data: {"email": "1@test.com"},
     children: [{
                    id: "person2",
                    name: "person 2",
                    data: {"email": "2@test.com"},
                    children: []
                },{
                    id: "person3",
                    name: "person 3",
                    data: {"email": "3@test.com"},
                    children: []
                }
                ] 
}

1)在Java中,我可以不使用Class对象而使用GSON吗?使用GSON和Java可以很容易地做到这一点吗?

GSON gson = new GSON();
gson.toJson("name", "person 1");

2)当我使用这个例子时:

Gson gson = new Gson();
            Person p = new Contact(rs.getString("name"));
            gson.toJson(p);
            String json = gson.toString();
            System.out.println(json);

我的Json输出不是我所期望的。那个Person示例是一个公共类示例,只有一个属性- name(用于测试目的)。为什么我会在输出中看到Factory、serializeNulls等?
谢谢

dffbzjpn

dffbzjpn1#

替换为:

gson.toJson(p);
String json = gson.toString();

与此:

String json = gson.toJson(p);
5fjcxozz

5fjcxozz2#

试试看:

Gson gson = new GsonBuilder().setPrettyPrinting().create();
String jsonStr = gson.toJson(YourObject);

相关问题