JSON简介
一、JSON是什么?
JSON: JavaScript Object Notation JS对象简谱,是一种轻量级的数据交换模式。
二、JSON语法:
对象中通过键值对 (key: value)的形式来表示对象的属性
注意:value即可以表示属性变量,又可以表示数组,还可以表示对象。
三、JSON格式:
对象和数组之间允许相互嵌套,多个键值对用逗号(,)隔开
{"age":18,/键和基本数据类型
"name":"喜羊羊"/键和字符串
"shuzu":["小灰灰",{"name":"美羊羊""home":"羊村"}],/键和数组
"duixiang":{ "name":"慢羊羊"“age":80}//键和对象}
JSON解析步骤
目前,国内使用较多的两款开源解析JSON的工具分别是:
谷歌的Gson
阿里的FastJson
下面采用以上两个jar包进行演示
步骤:
-
在ib文件夹导 入jar包,并配置,然后开始使用
-
GSON的使用方式
//创建JSON对象
Gson g =new Gson();
//创建Sheep对象
Sheep sheep =new Sheep("喜羊羊"”男:18);
//将Sheep对象转换成JSON对象
String json = g.toJson(sheep);/打印输出为
{"name":"喜羊羊""sex":”男""age":18}
//将JSON对象转换成Sheep对象
Sheep s = g.fromJson(ison, Sheep.class);
System.out.println(s.getclass();//class com.cjy.demo.Sheep
//将JSON对象转成HashMap对象
HashMap list = g.fromJson (ison, HashMap.class);
System.out.println (list.getClass();//classjava.util.HashMap
//如果传入的对象是将JSON对象,但是冒号后面是数组,则返回的是ArrayList,而不是数组对象。
HashMap arraylist = g.fromJson("fl"sheepl"Y"美羊羊V\"女 "\"16V"Jy", HashMap.class);
System.out.println (arraylist.get ("sheep").getClass();//class java.util.ArrayList
3.FastJSON的使用方式:
//创建Sheep对象
Sheep sheep =new Sheep("[喜羊羊,美羊羊〕""男:18);
//将Sheep对象转换成JSON对象
String json = JSON.toJSONString(sheep);/输出
{"age":18,"name":"[喜羊羊,美羊羊]“"sex":"男"}
//将JSON转换成Sheep对象
Map s = JSON.parseObject (json, Map.class);
System.out.printin(s);//输出{sex=男,name=[喜羊羊,美羊羊], age=18)
//将JSON转换成List对象
List<String> list = JSON.parseArray("[\”喜羊羊™"美羊羊V"]”String.class);
System.out.printin (list.get(1));/输出美羊羊
总结
以上就是两种常用的解析JSON的方法,萝卜青菜各有所爱,喜欢哪种方式去实现解析就给小伙伴们自己来决定咯~
【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!
生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!
只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!