json转map参考demo

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"));
        }
    }
}

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值