有人可以帮助我使用json序列化后产生json结果的java类:
{
"cinemas":[
{
"id":1,
"name":"Aberdeen Queen's Links",
"cinema_url":"http://www.cineworld.co.uk/cinemas/1"
}]
}
答案 0 :(得分:1)
如果您希望在Java中操作JSON,可以使用此库:
答案 1 :(得分:1)
String text = "{\"cinemas\":[{\"id\":1,\"name\":\"Aberdeen Queen's Links\",\"cinema_url\":\"http://www.cineworld.co.uk/cinemas/1\"}]}";
try {
JSONObject myJSONObject = new JSONObject(text);
//replace text with the ACTUAL json response text
JSONArray myArray = myJSONObject.getJSONArray("cinemas");
int id = myArray.getJSONObject(0).getInt("id");
String name = myArray.getJSONObject(0).getString("name");
String cinema_url = myArray.getJSONObject(0).getString("cinema_url");
//do what you want here
} catch (JSONException e) {
}
答案 2 :(得分:0)
通过执行以下操作,我能够生成该结构:
我假设你正在使用某种包含id,name和Url的Cinema对象。
我创建了一个Cinema的ArrayList,里面有一个影院对象。然后我将该ArrayList放入HashMap,关键字为“cinemas”
我使用了flexjson并在地图上做了一个deepSerialize并得到了你上面提到的确切结构。
这是一个例子: Cinema c = new Cinema(); c.setId(1); c.setName(“Aberdeen Queen's Links”); c.setCinemaUrl( “http://www.cineworld.co.uk/cinemas/1”);
Map<String, List<Cinema>> m = new HashMap<String, List<Cinema>>();
List<Cinema> a = new ArrayList<Cinema>();
a.add(c);
m.put("cinemas", a);
System.out.println(new JSONSerializer().deepSerialize(m));