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;