如何在我的Web应用程序中提供json输入?

时间:2011-06-14 12:34:57

标签: java eclipse json google-app-engine web-applications

我正在使用一个Web应用程序,它接受json对象,解析它并创建一个User对象。我想在gson.fromJson(jsonData,User.class)中提供这个json输入;:

 {
   users:[{
   name: "Jack",
   email: "email1",
   friends:[{
       name: "name2",
       email: "email2",

    }]
 }]
} 

我该怎么做才能给这个json对象代替jsonData。我正在使用谷歌应用引擎。

提前致谢。

1 个答案:

答案 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.setNameUser.setEmailUser.setFriends,..