一、JSON
1.什么是JSON
JSON(JavaScript Object Notation),是一种轻量级的数据交换格式。
一般用于浏览器与服务器之间的数据交换。
JSON采用独有的语言文本格式来实现数据交互。
2.优点
由于语言比较简洁,方便阅读,也方便程序解析
由于是轻量级的交换语言,JSON解析速度比XML更快,文档更小
3.使用JSON
JSON有两种格式:
一种是name:value构成的集合:{"我爱你":"false"}
格式:{属性名:属性值,属性:属性值,...}
一种是对象构成的数组:{"我爱你":["false","true"]}
格式:["属性值","属性值","属性值"]
两者可以相互组合数组用来存储集合,集合内也可以含有数组,区别在于取值是使用key还是下标。
4.如何在后台操作json数组。使用put与get最为简单,注意的是数组取值无法取出成为数组只能取出链表list。
//构建 List list=new ArrayList(); list.add("a"); list.add("b"); list.add("c"); String c="DDDD"; String[] a={"e","f","g"}; //插入值 JSONObject jsonO=new JSONObject(); jsonO.put("c", c); jsonO.put("l",list); jsonO.put("a",a); System.out.println(jsonO.toString()); //取值 String c2=(String) jsonO.get("c"); List l2=(List) jsonO.get("l"); List a2=(List) jsonO.get("a"); System.out.println(c2); System.out.println(l2); System.out.println(a2);
5如何在jsp页面操作json串
var obj={"name":"dhh","age":"26"}; var obj2={"name":"dhh","age":"26","address":{"city":"gz","area":"panyu"}}; var obj3={"color":["black","yellow"],"color2":["green","white"]}; var obj4= [{"name":"张飞","age":18,"isMarry":false},{"name":"马超","age":22,"isMarry":true}]; alert(obj.name+obj.age); alert(obj2.address.city+obj2.address.area); alert(obj3.color[0]+obj3.color2[1]); alert(obj4[1].isMarry);
以下还有一些不应该调用的方法。关于Json在后台的对象操作除了把对象转化为json以外其他的意义不大,单是很少把某个对象传送到前端
A aClass=new A(); List list=new ArrayList(); list.add("a"); list.add("b"); list.add("c"); JSONObject jsonObj = JSONObject.fromObject(aClass); JSONArray jsonObj2=JSONArray.fromObject(list); JSONArray jsonObj3 = JSONArray.fromObject(a); System.out.println(jsonObj); System.out.println(jsonObj2); System.out.println(jsonObj3);
前端一些处理json的方法,除了直接处理json结构的串以外也可以解析字符串成为json
var jsonObj = '{"cName":"web基础","cValue":"web"}'; //从json字符串对象转换成js对象 JSON是内置对象 var jsObj = JSON.parse(jsonObj);