引入相应的包json-lib-2.2-jdk15.jar
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
1. 把java 对象列表转换为json对象数组,并转为字符串
JSONArray array = JSONArray.fromObject(userlist);
String jsonstr = array.toString();
2.把java对象转换成json对象,并转化为字符串
JSONObject object = JSONObject.fromObject(user);
String jsonstr = object.toString();
3.把JSON字符串转换为JAVA 对象数组
JSONArray jsonarray = JSONArray.fromObject(userliststr);
List
4.把JSON字符串转换为JAVA 对象
JSONObject jsonobject = JSONObject.fromObject(userstr);
User user = (User)JSONObject.toBean(jsonobject, user.class);
//获取对象中的一个json数组
JSONArray array = jsonobject.getJSONArray("passports");
List
for (int i = 0; i < array.size(); i++) {
JSONObject object = (JSONObject)array.get(i);
PassPort passport = (PassPort)JSONObject.toBean(object, PassPort.class);
if(passport != null){
list.add(passport);
}
}
5.客户端JSON对象和字符串之间的转换:
var objson = eval('(' + strjson + ')');
/** * JSON转换为Map对象 * @param strJson * @return */ public static Map convertJSONtoMap(String strJson) { Map objMap = convertJSONObjecttoMap(JSONObject.fromObject(strJson)); // 此方法获取的对象无法转为Map对象 // Map objMap = (Map) JSONObject.toBean(JSONObject.fromObject(strJson), HashMap.class); return objMap; } /** * Map对象转换为JSON * @param strJson * @return */ public static String convertMaptoJSON(Map objMap) { return JSONObject.fromObject(objMap).toString(); } /** * 将JSONObjec对象转换成Map-List集合 * @param json * @return */ public static HashMapconvertJSONObjecttoMap(JSONObject json) { HashMap map = new HashMap (); Set> keys = json.keySet(); for (Object key : keys) { Object o = json.get(key); if (o instanceof JSONArray) { map.put((String) key, convertJSONArraytoMap((JSONArray) o)); } else if (o instanceof JSONObject) { map.put((String) key, convertJSONObjecttoMap((JSONObject) o)); } else { map.put((String) key, o); } } return map; } /** * 将JSONArray对象转换成Map-List集合 * @param json * @return */ public static Object convertJSONArraytoMap(JSONArray json) { List
【】