package saveresponse;
import com.alibaba.fastjson.*;
public class json {
public static void main(String[] args){
String data="{"code":"200","data":"3994A788","message":"执行成功","success":true,"timestamp":1587446311249}";
JSONObject json1 = JSON.parseObject(data);//将json格式的字符串转换成json对象
System.out.println(json1);
String message=json1.getString("message");//获取json对象中message键对应的值
System.out.println(message);
String data3=json1.toJSONString();//将json对象转换成json字符串格式
System.out.println(data3);
String str="{"code":"200","message":"执行成功","部门成员":[{"ID":"001","name":"limei"},{"ID":"002","name":"lihong"},{"ID":"003","name":"lijun"}]}";
JSONObject str1=JSON.parseObject(str);//将json格式的字符串转换成json对象
System.out.println(str1);
String str2=str1.getString("部门成员");//获取json对象中"部门成员"键对应的值,得到的是json数组格式的字符串
System.out.println(str2);
JSONArray str3=JSON.parseArray(str2);//将json数组格式的字符串转换成json数组格式
System.out.println(str3);
String name=str3.getJSONObject(0).getString("name");//获取json数组中第0个json对象中的name键对应的值
System.out.println(name);
int i;
for(i=0;i<str3.size();i++){//获取json数组的长度,循环输出数组中所有的name键对应的值
String e=str3.getJSONObject(i).getString("name");//获取第i个json对象中的name键对应的值
System.out.println(e);
}
}
}
fastjson中使用方法:
其中包括三个主要的类:JSON、JSONArray、JSONObject
JSONObject代表json对象,主要是get方法,通过“键:值”对中的“键”来获取相对应的值
1.getString(String key)该方法用于获取json对象中的字符串类型数据
2.getInteger(String key)该方法用于获取json对象中的整数类型的数据
3.Size()该方法判断“键:值”对的个数
4.isEmpty()该方法判断“键:值”对是否为空
JSONArray代表json对象数组
JSON代表JSONArray和JSONObject的转化
JSONObject json1 = JSON.parseObject(aaa);//将json字符串转换成json对象
String message=json1.getString("message");//获取json对象中message键对应的值
String data3=json1.toJSONString();//将json对象转换成json字符串格式
JSONArray str3=JSON.parseArray(str2);//将json数组格式的字符串转换成json数组格式
String name=str3.getJSONObject(0).getString("name");//获取json数组中第0个json对象中的name键对应的值
Int num=str3.size()获取json数组的长度
/*如果获取的是数组[],则需要使用(JSONArray)强转*/
JSONArray jsonArray = (JSONArray) jb.get("deviceStatusList");
package saveresponse;
import com.alibaba.fastjson.*;
public class json {
public static void main(String[] args){
String str="{"code":"200","message":"执行成功","部门成员":[{"ID":"001","name":"limei"},{"ID":"002","name":"lihong"},{"ID":"003","name":"lijun"}]}";
JSONObject str1=JSON.parseObject(str);//将json格式的字符串转换成json对象
System.out.println(str1);
JSONArray str3=(JSONArray) str1.get("部门成员");//如果获取的是数组[],则需要使用(JSONArray)强转
System.out.println(str3);
String name=str3.getJSONObject(0).getString("name");//获取json数组中第0个json对象中的name键对应的值
System.out.println(name);
int i;
for(i=0;i<str3.size();i++){//获取json数组的长度,循环输出数组中所有的name键对应的值
String e=str3.getJSONObject(i).getString("name");//获取第i个json对象中的name键对应的值
System.out.println(e);
}
}
}
package saveresponse;
import com.alibaba.fastjson.*;
public class json {
public static void main(String[] args){
String str="{ "code":200, "msg":"ok", "data":{ "collectionlist":[{"visit_person_id":"visit_person_id", "equipment_id":"equipment_id", "visit_records":[{ "visit_id": "216", "visit_person_id": "31", "business_id": "670", }] }] } }";
JSONObject str1=JSON.parseObject(str);//将json字符串转换为json对象
JSONObject data=str1.getJSONObject("data");//获取json对象中data键所对应的值保存为json对象的格式
JSONArray collectionlist=(JSONArray) data.get("collectionlist");//获取json对象中collectionlist所对应的值,保存为json数组格式
String visit_person_id=collectionlist.getJSONObject(0).getString("visit_person_id");//获取collectionlist json数组中第一个元素里的visit_person_id键对应的值,保存为字符串格式
System.out.println(visit_person_id);
}
}