JSON格式数据转换
一、前提
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
二、常见类型与JSON类型之间的转换
1、JSON--->javascript对象
var data=$.parseJSON(data);//$的使用需要加入jquery
2、Js对象--->JSON数据
//引用json2.js文件中JSON.stringify()方法
var data=new Object();
var json_data=JSON.stringify(data);
3、java对象--->json字符串
JSONObject jsonObject=JSONObject.fromObject(data);//对象转json
String str=jsonObject.toString();//json转字符串
4、json字符串--->java对象数组
String personstr=getRequest().getParameter(“person”);
JSONArray array=JSONArray.fromObject(personstr);
5、java对象列表--->json对象数组,并转化为字符串
JSONArray array=JSONArray.fromObject(userList);
String jsonStr=array.toString();
6、json字符串--->java对象数组(list,set)
String str=ServletActionContext.getRequest().getParameter(“persons”);
JSONArray array=JSONArray.fromObject(str);
List<Person> list=(List<Person>)array.toCollection(array,Person.Class);
//List集合转换为JSONArray:
List<String> list=new ArrayList<String>();
JSONArray array=JSONArray.fromObject(list);
7、JSONArray和JSONObject添加对象方法
JSONArray array=new JSONArray();
array.add(0,”java”);
Array.add(1,”python”);
JSONObject jsonObject=new JSONObject();
jsonObject.put(“name”,”John”);
jsonObject.put(“age”,23);
8、集合数组--->JSON
//a.list集合转换为json:
JSONArray array=JSONArray.fromObject(new ArrayList());
//b.map集合转换为json:
JSONObject object=JSONObject.fromObject(new HashMap());
//c.数组转换为json:
int[] arr=new int[10];JSONArray array=JSONArray.fromObject(arr);
//d.一般数组转换为json代码:
JSONArray array=JSONArray.fromObject(“[‘json’,’is’,’easy’]”);
9、javascript对象--->json对象
var obj={};
var data=JSON.stringify(obj);
10、json数据转化为javascript对象
var json={‘name’:’lili’};
var obj=JSON.parse(json);