在项目中经常会遇到java对象与json对象的相互转换,为了以后查找方便,自己做了下整理

1.将一个JSON字符串转换为一个JSONObject对象


String sJson = "[{'gwcxxid':'1','spsl':'2'},{'gwcxxid':'1','spsl':'2'},{'gwcxxid':'3','spsl':'4'}]"; 
  JSONArray jsonArray = new JSONArray(sJson); 
  int iSize = jsonArray.length(); 
  System.out.println("Size:" + iSize); 
  for (int i = 0; i < iSize; i++) { 
   JSONObject jsonObj = jsonArray.getJSONObject(i); 
   System.out.println("[" + i + "]gwcxxid=" + jsonObj.get("gwcxxid")); 
   System.out.println("[" + i + "]spsl=" + jsonObj.get("spsl")); 
   System.out.println(); 
  }



2.

将json字符串转换为json对象,然后再解析json对象

JSONObject jsonObject = JSONObject.fromObject(jsonStr);根据json中的键得到它的值
String name = jsonObject.getString("name");
int num = jsonObject.getInt("num");
String sex = jsonObject.getString("sex");
int age = jsonObject.getInt("age");



3.

将json字符串转换为json对象,再将json对象转换为java对象

JSONObject obj = new JSONObject().fromObject(jsonStr);//将json字符串转换为json对象
将json对象转换为java对象
Person jb = (Person)JSONObject.toBean(obj,Person.class);//将建json对象转换为Person对象



4.

将java对象转换为json对象,在将json对象转换为json字符串

JSONObject json = JSONObject.fromObject(obj);//将java对象转换为json对象
String str = json.toString();//将json对象转换为字符串

备注:

json应用的架包:commons-beanutils-1.7.0.jar


commons-collections-3.2.jar commons-lang-2.4.jar commons-logging-1.1.jar ezmorph-1.0.4.jar json-lib-2.2.2-jdk15.jar