2017-02-19 71 views
0

Java對象:分析JSON的特定領域沒有一個包裝類

public class Foo { 
@JsonProperty("name") 
private String name; 
@JsonProperty("surname") 
private String surname; 

// getters + setters 
} 

JSON:

{ 
    "meta":{ 
     "code":200 
    }, 
    "data":[ 
     { 
     "name":"John", 
     "surname":"Smith" 
     } 
    ] 
} 

API調用:

return restTemplate.getForEntity(requestUrl, Foo[].class).getBody(); 

是否可以解析「數據「數組沒有創建一個額外的包裝類?我嘗試在我的Java類上添加@JsonRootName("data")註釋,但它不起作用。

+0

GSON可以做到這一點很容易。 http://stackoverflow.com/questions/37231894/using-gson-and-retrofit-2-to-deserialize-complex-api-responses –

+0

看起來更加複雜 - 添加數百個類的解析不是我正在尋找爲 – Bravo

+0

數百?它是1個TypeAdapterFactory,Jackson本身也有自定義的反序列化。 Java是面向對象的,那麼你對類有什麼? –

回答

0

你可以嘗試:

import org.json.*; 

JSONObject obj = new JSONObject(" .... "); 
String name = obj.getJSONObject("data").getString("name"); 
+0

看起來像傑克遜使用,而不是org.json –