Java知识整理(二十三)之json

JSON:轻量级的数据交换格式,相对于XML,JSON解析速度更快,文档更小
结构:
1.名值对:{"name":"Sally","city":"北京","age":25}
属性值可以是string,number,boolean(true,false),null,object.属性名必须使用双引号,属性值如果是字符串要用双引号
2.值的有序列表(数组,集合):[value,value,value...] (可以互相套用)
使用JSON实现数据交换:java对象-->JSON字符串(web服务器)-->JSON字符串(客户端)-->JavaScript对象
JSON对象-->JavaScript对象:
1.var str = '{"name":"张三","age",18}'; var obj = eval("("+str+")");
2.使用原生对象JSON提供的parse()方法:var obj = JSON.parse(str);
3.var obj = str.parseJSON();(需要用到JSON.js文件)
JS中JSON对象(obj)-->String字符串:var str = obj.toJSONString();(需json.js); var str = JSON.stringify(obj);


java对象-->JSON对象(通过拼接JSON字符串重构对象属性)
JSONObject obj = JSONObject.fromObject(emp); String jsonStr = obj.toString(); java对象-->JSON对象
JSONArray jsonArr = JSONObject.formObject(arr); String jsonStr = jsonArr.toString(); java数组(集合)-->JSON对象
JSON对象-->Java对象
Emp emp = (Emp)JSONObject.toBean(obj,Emp.class); List<Emp> list = (List<Emp>)JSONArray.toCollection(jsonArr,Emp.class);
缓存问题:IE浏览器在发送GET请求时,如果访问过该地址不再发送请求(Chrome,Firefox继续发请求);解决(请求后加随机数):xxx.do?Math.random();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值