ITPub博客

首页 > IT职业 > IT生活 > 使用 hutool 工具类解析 json 对象

使用 hutool 工具类解析 json 对象

IT生活 作者:peace72 时间:2021-09-09 10:40:43 0 删除 编辑

本文主要记录如何使用 hutool 工具类解析 json 对象

1、在 pom 文件内添加 hutool 依赖:

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.0.6</version>
</dependency>

2、字符串 转 JSONObject

String jsonStr = "{"DispositionNotificationListObject":{"DispositionNotificationObject":[{"PersonObject":{"GenderCode":0,"EthicCode":0,"DeviceID":"0","SourceID":"022019121117052900016","SubImageList":{"SubImageInfoObject":[{"Type":"11","StoragePath":"xxx","DeviceID":"0","ImageID":"022019121117052900016","EventSort":0,"ShotTime":"19700119134716","Height":-1,"FileFormat":"jpg","Width":-1},{"Type":"11","StoragePath":"xxx","DeviceID":"0","ImageID":"022019121117052900016","EventSort":0,"ShotTime":"19700119134600","Height":-1,"FileFormat":"jpg","Width":-1},{"Type":"14","StoragePath":"xxx","DeviceID":"0","ImageID":"022019121117052900016","EventSort":0,"ShotTime":"19700119134600","Height":-1,"FileFormat":"jpg","Width":-1}]},"LeftTopY":141,"LeftTopX":104,"Name":"图片姓名测试","InfoKind":1,"PersonID":"0220191211170529000180100019","RightBtmY":806,"RightBtmX":932,"IDNumber":""},"NotificationID":"202002031736","DispositionID":"71","TriggerTime":"2020-02-03 15:34:15","Title":"第三方1400告警信息接收测试"}]}}";
JSONObject json = new JSONObject(jsonStr);

3、解析 JSONObject:

1)获取对象
JSONObject dispositionNotificationListObject = json.getJSONObject("DispositionNotificationListObject");
2)获取单值
String alertPersonName = personObject.getStr("Name");
Integer eventSort = subImageInfoObject.getInt("EventSort");

4、字符串 转 JSONArray

String jsonArrayStr = "[{"Type":"11","StoragePath":"http://192.168.166.203:11180/storage/v1/image/global?cluster_id=ShenSi&uri_base64=bm9ybWFsOi8vcmVwb3NpdG9yeS1idWlsZGVyLzIwMjAwMTIwL1ZRQnV1LVlsWFpGd29lN1dJSnlXUmc9PUAx","DeviceID":"0","ImageID":"022019121117052900016","EventSort":0,"ShotTime":"19700119134716","Height":-1,"FileFormat":"jpg","Width":-1},{"Type":"11","StoragePath":"http://192.168.166.203:11180/storage/v1/image/global?cluster_id=ShenSi&uri_base64=bm9ybWFsOi8vcmVwb3NpdG9yeS1idWlsZGVyLzIwMjAwMTIwL0gzc1dYN3lXRmh1Zmd0Sjd6Tlo1cnc9PUAx","DeviceID":"0","ImageID":"022019121117052900016","EventSort":0,"ShotTime":"19700119134600","Height":-1,"FileFormat":"jpg","Width":-1},{"Type":"14","StoragePath":"http://192.168.166.203:11180/storage/v1/image/global?cluster_id=ShenSi&uri_base64=bm9ybWFsOi8vcmVwb3NpdG9yeS1idWlsZGVyLzIwMjAwMTIwL0JXS3RIQm1aVXpUT3prNzJOYW50S1E9PUAx","DeviceID":"0","ImageID":"022019121117052900016","EventSort":0,"ShotTime":"19700119134600","Height":-1,"FileFormat":"jpg","Width":-1}]";
JSONArray jsonArray = new JSONArray(jsonArrayStr);

5、解析 JSONArray:

1)获取数组对象
JSONArray subImageInfoObjectList = subImageList.getJSONArray("SubImageInfoObject");
2)获取单值
for(int j=0; j< jsonArray.size(); j++){
    JSONObject subImageInfoObject = jsonArray.getJSONObject(j);
    String Type = subImageInfoObject.getStr("Type");
    Integer width = subImageInfoObject.getInt("Width");   
    System.out.println(Type);
}

注:以上代码可能有些值对应不上,本文只是提供一个切实有效的思路,测试代码需要根据示例自我调整。


点关注,不迷路

好了各位,以上就是这篇文章的全部内容了,能看到这里的人呀,都是 人才。

白嫖不好,创作不易。 各位的支持和认可,就是我创作的最大动力,我们下篇文章见!

如果本篇博客有任何错误,请批评指教,不胜感激 !

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4577/viewspace-2824820/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-13

  • 博文量
    0
  • 访问量
    478