我正在使用一个Web应用程序,它接受json对象,解析它并创建一个User对象。我想在gson.fromJson(jsonData,User.class)中提供这个json输入;:
{
users:[{
name: "Jack",
email: "email1",
friends:[{
name: "name2",
email: "email2",
}]
}]
}
我该怎么做才能给这个json对象代替jsonData。我正在使用谷歌应用引擎。
提前致谢。
答案 0 :(得分:1)
如果您使用Gson,请阅读文档here。
作为jsonData
,您可以使用流式传输json数据的json或Reader传递字符串。
UPD:在您的情况下,您需要反序列化数组,因此将其用作
String jsonData = "{"
"users:[{ " +
"name: 'Jack', " +
"email: 'email1', " +
"friends:[{ " +
" name: 'name2', " +
" email: 'email2', " +
" }] " +
"}] " +
"}";
User[] users = gson.fromJson(jsonData, User[].class);
GSon使用反射来设置属性,因此请确保您拥有json中所有属性的setter,例如User.setName
,User.setEmail
,User.setFriends
,..