1
在客戶端側,我已經建造了一個JSOnARRAY這樣的:如何在java中使用flexjson.deserializer將jsonarray反序列化爲列表<Map>?
{"filterEntries":[{"dataName":"mainContact","filterValue":"BILLGATES"}]}.
在服務器側(JAVA),我可以使用retireve值:
jfilter = JSONValue.parse(jsonFilterStr); //jsonFilterStr={"filterEntries":[{"dataName":"mainContact","filterValue":"BILLGATES"}]}.
JSONArray jFilterEntries = (JSONArray) jfilter.get("filterEntries");
for (int i=0;i<jFilterEntries.size();i++){
JSONObject jFilterEntry = (JSONObject) jFilterEntries.get(i);
String dataName = (String) jFilterEntry.get("dataName");
String filterValue = (String) jFilterEntry.get("filterValue");
}
但現有的應用程序使用flex.json.deserializer和我無法使用flex.json.deserializer實現相同。我應該如何繼續? 我願做這樣的事情:
JSONDeserializer jsonDeserializer = new JSONDeserializer();
jsonDeserializer.use(null, List.class);
List<Map<String,String>> lMap= (List<Map<String,String>>)jsonDeserializer.deserialize(params);
上面的代碼似乎存在一些問題,我相信因爲它沒有運行或什麼。但是在JSONDeserializer之前你確實需要一個「新」。我也得到一個錯誤,它「無法從列表轉換爲地圖<字符串,列表>」 此外,我試圖這樣的事情,但一點點複雜:{「title」:[「a」,「 b」, 「C」]} '代碼' 地圖<字符串,列表>結果=新JSONDeserializer ?> –
Chris
2012-08-16 03:38:20