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;

相关文章

AJAX是一种基于JavaScript和XML的技术,能够使网页实现异步交...
在网页开发中,我们常常需要通过Ajax从后端获取数据并在页面...
在前端开发中,经常需要循环JSON对象数组进行数据操作。使用...
AJAX(Asynchronous JavaScript and XML)是一种用于创建 We...
AJAX技术被广泛应用于现代Web开发,它可以在无需重新加载页面...
Ajax是一种通过JavaScript和HTTP请求交互的技术,可以实现无...