JSONArray,JSONObject解析复杂的json数据

1、添加字符串和集合到json数组中 

        // 把字符串和list添加到jsonArray中		
        JSONArray jsonArrayValue = new JSONArray();
		jsonArrayValue.add(0, isAdminUser);
		jsonArrayValue.add(1,systems);
		jsonArrayValue.add(2,authUrl);
		jsonArrayValue.add(3,functions);

        //  拼接json字符串
		StringBuffer jsonStr = new StringBuffer();
		jsonStr.append("{");
		jsonStr.append("\""+loginName+"\":");
		jsonStr.append(jsonArrayValue.toJSONString());
		jsonStr.append("    }");

2、解析json数组(包括字符串和集合) 

            //获得json字符串			
            String jsonStr = InterfaceUtil.getFilterInfo(loginName);
			// 字符串转化为JSON对象
			JSONObject jsonObject = JSONObject.parseObject(jsonStr);
            // 通过key转化为json数组
			JSONArray jsonArray = jsonObject.getJSONArray(loginName);
            // 获得数组第一个值
			// 是否是管理员
			String isAdminUser = (String)jsonArray.get(0);
			// 获得数组第二个值为list集合
			JSONArray sysJsonArray = jsonArray.getJSONArray(1);
	        // 通过路径查找系统id		 
			String systemId = "";
			
			for(int i = 0; i < sysJsonArray.size(); i++){
				JSONObject sysJsonObject = sysJsonArray.getJSONObject(i);
                // 获得json object里面的属性值
				String sysPath = sysJsonObject.getString("contexpath");
				if(tempContextUrl.equals(sysPath)){
					systemId = sysJsonObject.getString("id");
					break;
				}
			}

3、导入的包

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
 

转载于:https://my.oschina.net/okqq/blog/724457

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值