zoukankan      html  css  js  c++  java
  • fastjson的使用

    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);
     }
     
    }


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             

  • 相关阅读:
    HDU 1874 畅通工程续(dijkstra)
    HDU 2112 HDU Today (map函数,dijkstra最短路径)
    HDU 2680 Choose the best route(dijkstra)
    HDU 2066 一个人的旅行(最短路径,dijkstra)
    关于测评机,编译器,我有些话想说
    测评机的优化问题 时间控制
    CF Round410 D. Mike and distribution
    数字三角形2 (取模)
    CF Round410 C. Mike and gcd problem
    CF Round 423 D. High Load 星图(最优最简构建)
  • 原文地址:https://www.cnblogs.com/jingdenghuakai/p/13188252.html
Copyright © 2011-2022 走看看