(1)java对象转换成json字符串或者java对象组成的集合转换成json字符串。
使用json提供的官方的工具JSONObject,JSONArray
- java对象转换为Json对象
//java对象转换为json对象 public static void test1(){ Stock s = new Stock(); s.setName("深发展"); s.setCode("600015"); s.setPrice(10); JSONObject obj = JSONObject.fromObject(s); System.out.println(obj); }
- java对象集合转换为Json字符串
-
//java集合对象转换为Json字符串 public static void test2(){ List<Stock> stocks = new ArrayList<Stock>(); for(int i=0;i<3;i++){ Stock s = new Stock(); s.setName("深发展" + i); s.setCode("60001" + i); s.setPrice(10); stocks.add(s); } JSONArray obj = JSONArray.fromObject(stocks); String jsonStr = obj.toString(); System.out.println(jsonStr); }
(2)json字符串转换成javascript对象
使用一些js框架提供的函数,比如prototype提供的evalJSON函数
var arr = txt.evalJSON();
function fn(){ var xhr = getXhr(); xhr.open('get','quoto.do',true); xhr.onreadystatechange=function(){ if(xhr.readyState == 4){ var txt = xhr.responseText; //将json字符串转换成js对象 var arr = txt.evalJSON(); //更新tbody var html = ''; for(i=0;i<arr.length;i++){ var s = arr[i]; html +='<tr><td>' + s.name + '</td><td>' + s.code + '</td><td> ' +s.price + '</td></tr>'; } $('tb1').innerHTML = html; } }; xhr.send(null); }