1
flexjson.deserializer를 사용하여 java에서 List <Map>로 jsonarray를 deserialize하는 방법은 무엇입니까?
클라이언트 측에서는 다음과 같이 JSOnARRAY를 구성했습니다.{"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);
위의 코드에 몇 가지 문제가있는 것으로 보입니다. 실행되지 않았기 때문에 확실합니다. 하지만 JSON 디자이너 이전에 "새로운"것이 필요합니다. 나는 또한 ">" "List에 을 변환 할 수 없다는 오류가 발생합니다. 또한 이와 같은 시도를하고 있지만 다소 복잡하지는 않습니다 : {"title ": ["a "," B ","C "]} '부호' 지도 <문자열 목록 > = 결과 새로운 JSONDeserializer ?> –
Chris
지도 <문자열 목록> = reuslt 새로운 JSONDeserializer <지도 <문자열 목록 >>(). use ("values", List.class) .deserialize (json); –
chubbsondubs