JSON初识
来源:互联网 发布:淘宝如何使用分期付款 编辑:程序博客网 时间:2024/05/29 14:31
1、什么是JSON
JSON(javascript Object Notation)是一种轻量级的数据交换格式。
JSON是用字符串来表示javascript对象,例如可以在Servlet中发送一个JSON格式的字符串给客户端javascript,javascript可以执行这个字符串,得到一个javascript对象。
XML也可以用来作为数据交换,可以在Servlet中发送XML给javascript,然后javascript在去解析XML
2、JSON对象语法
JSON语法:
* 数据在 名称/值 的键值对中
* 数据有逗号分隔
* 花括号保存对象
*方括号保存数组
例:
var person={"name":"zhangsan","age":18,"sex":"male"}
josn值:
* 数字(整数或浮点数)
* 字符串(在双引号中)
* 逻辑值(ture或false)
* 数组(在方括号中)
* 对象(在方括号中)
* null
注意:
javascript中的eval()方法可以将字符串,转换成js代码来执行。
eg: eval( "(" + str + ")" ) //必须使用()将字符串括起来
3、json与xml比较
- 可读性:xml较之更好一些
- 解析速度:JSON本身就是javascript对象,所以简单很多,速度很快
- 流行度:在ajax领域,JSON更受欢迎。
4、json-lib的应用(重点)
①什么是json-lib
它可以把javabean转换json串
②使用的jar包
核心jar包:
json-lib.jar
json-lib依赖的jar包:
commons-lang.jar
commons-beanutilis.jar
commons-logging.jar
commons-collection.jar
ezmorph.jar
④核心类:
* JSONObject —> Map
》toString()
* JSONArray —-> List
》toString()
当map使用时:
public void fun(){ JSONObject msp=new JSONObject(); msp.put("name","zhagnsan"); msp.put("age",23); msp.put("sex","male"); String s=msp.toString(); system.out.println(s);}out:{"name":"zhangsan","age":23,"sex":"male"}
当你已经有一个对象时,可以把对象转换成JSONObject对象:
JSONObject.fromObject()
public void fun(){ Person p=new Person("lisi",32,"female"); JSONObject msp=JSONObject.fromObject(p);system.out.print(msp.toString());out:{"name":"lisi","age":32,"sex":"female"}}
当list使用时:
Person p=new Person("lisi",32,"female");JSONArray list=new JSONArray();list.add(p);system.out.println(list.toString());List<Person> list1=new ArrayList<Person>();//将list对象转换成JSONArray,在代用toString方法system.out.println(JSONArray.fromObject(list).toString());
- 初识JSON
- 初识JSON
- 初识JSON
- 初识JSON
- 初识JSON
- 初识JSON
- 初识JSON
- 初识Json
- 初识JSON
- 初识JSON
- 初识JSON
- Json初识
- JSON初识
- json初识
- What is JSON:初识JSON
- What is JSON:初识JSON
- What is JSON:初识JSON
- What is JSON:初识JSON
- mybatis一级二级缓存
- iOS【开发之 APP自定义换肤、主题更换】
- 制造业从中国回流英国 英媒:工业史上的奇妙反转
- iOS 用symbolicatecrash来符号化崩溃日志
- fatal: Unable to find remote helper for 'https'
- JSON初识
- pat1001
- jekyll-paginate使用失败
- React Native-----RN----React Native介绍
- 今日头条秋招前端笔试附加题解题思路
- QT下载地址大全
- PATB1030——完美数列
- 实战2.Spark编译与部署(上)--基础环境搭建
- ACM-9月10日周末训练心得