您的位置:首页 > Web前端 > JavaScript

json转map参考demo

2017-01-18 22:29 330 查看
import java.util.HashMap;

import java.util.Iterator;

import java.util.List;

import java.util.Map;

import net.sf.json.JSONObject;

/**

*

* 用于json转map

*

* @author humingfeng

* @description 工作中的点点滴滴,内容中的json根据自己修改,仅供参考

*/

@SuppressWarnings(“serial”)

public class JSONLibUtil implements java.io.Serializable

{

public static String serializeObjectToJSON(Object obj)
{
if (obj == null)
return null;
else
{
JSONObject jsonObject = JSONObject
.fromObject(obj);
return jsonObject.toString();
}
}

@SuppressWarnings("unchecked")
public static Object deserializeJSONToObject(
String json, Class rootClass,
Map classMapping)
{
JSONObject jsonObject = JSONObject.fromObject(json);
if (classMapping != null)
return JSONObject.toBean(
jsonObject,
rootClass,
classMapping);
else
return JSONObject.toBean(jsonObject, rootClass);
}

@SuppressWarnings("unchecked")
public static Map deserializeJSONToMap(String json) {
JSONObject jsonObject = JSONObject.fromObject(json);
Iterator<?> it = jsonObject.keys();
Map map = null;
while (it.hasNext()) {
Object key = it.next();
Object o = jsonObject.get(key);
if(map==null)map = new HashMap();
map.put(key, o);
}
return map;
}
@SuppressWarnings("unchecked")
public static void main(String[] args) {
String s = "{country:\"EP\",appNumber:\"dse232wewe\", eesNumber:\"1231331\", ipType:\"1\", eesId:\"323232\", eesDate:\"2012-03-23\",filingDate:\"2012-03-23\"," +
"appDate:\"2012-03-23\"," +
"applicantName:[{prifex:\"f1\",lastName:\"ln\",firstName:\"fn\",middleName:\"mn\",suffix:\"sf\"},{prifex:\"f2\",lastName:\"ln\",firstName:\"fn\",middleName:\"mn\",suffix:\"sf\"}]" +
" }";

Map m =deserializeJSONToMap(s);

List applicantMap = (List)m.get("applicantName");
System.out.println(applicantMap);
if(applicantMap!=null&&applicantMap instanceof List){
Iterator iterator = applicantMap.iterator();
while(iterator.hasNext()) {
Map v = (Map)iterator.next();
System.out.println(v.get("prifex"));
}
}
}


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: