接口测试必备的,2种常⽤的JSON解析⽅法

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包进行演示

步骤:

  1. 在ib文件夹导 入jar包,并配置,然后开始使用

  2. 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 list = JSON.parseArray("[\”喜羊羊™"美羊羊V"]”String.class);

System.out.printin (list.get(1));/输出美羊羊

总结

以上就是两种常用的解析JSON的方法,萝卜青菜各有所爱,喜欢哪种方式去实现解析就给小伙伴们自己来决定咯~


          【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】


一、Python编程入门到精通


二、接口自动化项目实战  

三、Web自动化项目实战


四、App自动化项目实战 

五、一线大厂简历


六、测试开发DevOps体系 

七、常用自动化测试工具


八、JMeter性能测试 

九、总结(尾部小惊喜)

生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!

生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!

只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!

你可能感兴趣的:(自动化测试,技术分享,软件测试,json,软件测试,程序人生,自动化测试,python)