返回顶部
首页 > 资讯 > 精选 >Java实现json数据处理的常用脚本有哪些
  • 475
分享到

Java实现json数据处理的常用脚本有哪些

2023-07-05 07:07:05 475人浏览 八月长安
摘要

本篇内容介绍了“Java实现JSON数据处理的常用脚本有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、工具的使用推荐1、获取到请求u

本篇内容介绍了“Java实现JSON数据处理的常用脚本有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、工具的使用推荐

1、获取到请求url(接口的形式-一般数据都是json)

推荐谷歌浏览器,当然其他浏览器也可以的

在network 下,刷新获取目标url

2、获取到目标url(是json数据格式)

推荐火狐浏览器,直接在火狐的地址栏搜索目标url,就可以得到格式美化后的json数据了

3、小细节

(1) 使用谷歌浏览器,获取目标url进行复制的时候,有一个小细节-选择copy,不要选copy value

因为copy value 会对url中的某些参数进行utf8格式转化

二、网页的Json数据和java代码的Map数据

真实业务需求中的数据结构比较复杂,多层嵌套,比如请求url的json数据:map中嵌套list,然后list的每个元素是map,这个map又嵌套了map。

小细节:要注意嵌套的是map还是list(因为0、1、2、3、4... 既可能是索引下标,也可能只是key):

  • 通过火狐浏览器折叠后的形状做判断,比如{} 则是map,如果是[] 说明是list

  • 如果是idea 调试,也是要注意debug 模式下的类型提示。因为debug 模式下,比如set类型的数据结构,有5个元素,它会给0、1、2、3、4存储一下元素然后再展示给你观察,但是要是你注意到提示的类型是Set类型的话,你就清楚在内存中,存储的绝对不是0、1、2、3、4 这样连续存储。

1、网页的json数据

json 数据格式特点

key:value

键值对之间是冒号形式

json 数据的本质

就是字符串,json字符串。

2、java代码的Map数据

Map 数据格式特点

key=value

键值对之间是等号形式

3-1、业务处理-json和map的相互转换【json 序列化、反序列化】

(1) 推荐使用: JsonUtil 工具类

其实就是封装了ObjectMapper 关于json和map的相互转换。toObject方法封装的是readValue方法,toJson封装的是writeValueAsString方法。

json转换成map:JsonUtil.toObject(String content, Class valueType) 返回值是一个 T 类型的

或者 JsonUtil.toObject(String content, TypeReference valueTypeRef) 返回值是一个 T 类型的

返回值还是T 类型(相当于Object类型),要想进一步转换map,可以强转一下

map转成json:JsonUtil.toJson(Object obj)

例子-json转map

String json = createJsonString("user","xiaoming");       Object object1 = JsonUtil.toObject(json, new TypeReference<Object>() {});//或者使用方法JsonUtil.toObject(json, Object.class);效果也是一样的        Map<String, Object> map1 = (Map<String, Object>) object1;        System.out.println(map1.toString());        System.out.println(map1.getClass());    public static String createJsonString(String key, Object value) {        JSONObject jsonObject = new JSONObject();        jsonObject.put(key, value);        return jsonObject.toString();    }public static List<Map<String, Object>> toListMap(String json) {    List<Object> list = JsonUtil.toObject(json,  new TypeReference<List<Object>>() {});        List<Map<String, Object>> listw = new ArrayList<Map<String, Object>>();        for (Object object : list) {            Map<String, Object> ret = (Map<String, Object>) object;            listw.add(ret);        }        return listw;}
Map<String, Object> oldMap1 = new HashMap<>();oldMap.put("1", "一");String json = JsonUtil.toJson(oldMap);System.out.println(json);

(2) 直接使用:ObjectMapper

map 在java中,可以划分到更大的范围进行处理-Object进行处理

json转换成map:

readValue(String content, Class valueType) 返回值是一个 T 类型的

或者 readValue(String content, TypeReference valueTypeRef) 返回值是一个 T 类型的

返回值还是T 类型(相当于Object类型),要想进一步转换map,可以强转一下

map转成json:

writeValueAsString(Object obj)

Map<String, Object> oldMap1 = new HashMap<>();oldMap.put("1", "一");ObjectMapper objectMapper = new ObjectMapper();String json = objectMapper.writeValueAsString(oldMap);System.out.println(json);

3-2、业务中,将map转成了json字符串后,想获取json字符串中的key或者value

如果是数据非常简单,量非常小,可以使用String的相关截取合并函数,但是不建议,因为json数据的key长度不是固定的,截取非常麻烦

思路:将json字符串转成json(节点)对象

节点:这块理解和dom元素的node是一样的。每个元素都可以理解位一个节点。

■ 例子:

细节:如果是一个JsonNode数组,使用jsonNode.elements();读取数组中每个node, 如果不是JsonNode数组,使用jsonNode.elements();返回jsonNode的values

//首先把嵌套map转换json字符串String jsonStr = mapper.writeValueAsString(oldMap);//把json字符串转换jsonNode节点对象,通过jsonNode可以获取到想要的字段JsonNode jsonNode = mapper.readValue(jsonStr, JsonNode.class);//迭代获取到jsonNode的valuesIterator<JsonNode> elements = jsonNode.elements();while (elements.hasNext()) {    JsonNode node = elements.next();    System.out.println(node.toString());}//也可以迭代获取到jsonNode的keysIterator<String> keys = jsonNode.fieldNames();while (keys.hasNext()) {     String key = keys.next();     System.out.println("key键是:" + key);}//通过key 获取到 valueJsonNode jNode = jsonNode.get(key);//得到value,value可能是普通的值,也可能是map//获取到键值对Iterator<Map.Entry<String,JsonNode>> jsonNodes = jsonNode.fields();     while (jsonNodes.hasNext()) {         Map.Entry<String, JsonNode> node = jsonNodes.next();         System.err.println("遍历获取key:"+node.geTKEy());         System.err.println("遍历获取值:"+node.getValue().toString());}

JsonNode节点对象(看出Object)转成 josn 字符串,使用JsonUtil.toJson(jsonNode) 方法即可。

三、关于网页相关的常识

1、网页打不开

原因:可能是网站是在外网,网速受到限制;也可能是该网页的大小太大了(常见情况就是该网页有非常非常多的图片),并且网站还是在外网;

解决:vpn

2、网页打开慢时,如何查看网页加载的大小和时间

transferred over network和 resources loaded by the page 区别:

其实和content-encoding: gzip相关;两者的差别就在于压缩上,transferred 是前端页面加载的所有资源经过解压之后的原始大小。

■ 还可以查看某个请求的大小,比如图片请求的大小

一般默认下,直接查看就可以啦(毕竟看完也只是做个大概预判)

3、善用network 提供的过滤项

(1) 通过过滤,保留接口请求

(2) 直接通过关键词过滤

4、关于刷新获取到请求url

关键:看的是页面的布局,例如滚动布局,为了获取到url,你需要滚动页面进行刷新;

通用:按F5刷新。

具体情况具体分析,例如你想获得某个点击事件的url,打开network,那就点击一下(按钮),然后观察network新增了一条url。

5、快速判断页面的数据是同步加载还是异步加载

使用谷歌浏览器,禁止js,如果禁止js后还可以看到页面数据,则是同步数据,否则就是异步数据。

“Java实现json数据处理的常用脚本有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: Java实现json数据处理的常用脚本有哪些

本文链接: https://lsjlt.com/news/350486.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java实现json数据处理的常用脚本有哪些
    本篇内容介绍了“Java实现json数据处理的常用脚本有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、工具的使用推荐1、获取到请求u...
    99+
    2023-07-05
  • Java实现json数据处理的常用脚本分享
    目录一、工具的使用推荐1、获取到请求url(接口的形式-一般数据都是json)2、获取到目标url(是json数据格式)3、小细节二、网页的Json数据和java代码的Map数据三、...
    99+
    2023-03-02
    Java json数据处理脚本 Java json数据处理 Java json数据
  • mysql之数据库常用脚本有哪些
    这篇文章主要介绍了mysql之数据库常用脚本有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇mysql之数据库常用脚本有哪些文章都会有所收获,下面我们一起来看看吧。一、库新...
    99+
    2023-04-07
    mysql 数据库
  • Java 大数据处理中常用的函数有哪些?
    随着数据量的不断增加,大数据处理已经成为了企业中不可或缺的一部分。在 Java 大数据处理中,一些常用的函数可以帮助开发人员更加高效地处理海量数据。本文将介绍 Java 大数据处理中常用的函数,并配以相应的演示代码。 一、MapReduc...
    99+
    2023-09-22
    大数据 shell 函数
  • JavaScript中JSON数据处理有哪些
    小编给大家分享一下JavaScript中JSON数据处理有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!JSON 语法Jav...
    99+
    2024-04-02
  • 常用的Sheel脚本有哪些
    这篇文章给大家分享的是有关常用的Sheel脚本有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、list_sys_status.sh显示系统使用的以下信息:主机名、IP地址、子网掩码、网关、DNS服务器IP...
    99+
    2023-06-27
  • 常用的shell脚本有哪些
    这篇文章主要讲解了“常用的shell脚本有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“常用的shell脚本有哪些”吧!1.模拟linnux登录shell代码如下:#/bin/bashe...
    99+
    2023-06-09
  • Bash脚本中处理错误的常用方法有哪些
    这篇文章主要为大家分析了Bash脚本中处理错误的常用方法有哪些的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“Bash脚本中处理错误的常用方法有哪些”的知识吧...
    99+
    2023-06-28
  • python处理json数据的方法有哪些
    Python处理JSON数据的方法有以下几种:1. 使用内置的json模块:Python提供了内置的json模块,可以使用它来处理J...
    99+
    2023-08-12
    python json
  • Java中Json的处理方法有哪些
    这篇文章主要介绍“Java中Json的处理方法有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java中Json的处理方法有哪些”文章能帮助大家解决问题。Java Json的各种处理一、net....
    99+
    2023-07-02
  • Java异常处理Throwable实现方法有哪些
    Java异常处理Throwable实现方法有以下几种方法:1. try-catch语句:使用try-catch语句可以捕获并处理异常...
    99+
    2023-08-15
    Java Throwable
  • Go处理JSON数据的实现
    目录1. 结构体对象转 JSON 字符串2.  JSON 字符串转结构体对象3. 结构体切片转JSON字符串4. JSON字符串(JSON数组)转切片5. JSON 字符串...
    99+
    2023-02-17
    Go处理JSON Go JSON
  • 常用的Linux监控脚本有哪些
    小编给大家分享一下常用的Linux监控脚本有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、查看主机网卡流量#!/bin/bash#network#Mike...
    99+
    2023-06-13
  • 有哪些常用的shell脚本命令
    有哪些常用的shell脚本命令?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。shell脚本基本命令:1、echo 命令1 基本使用Shell 的 echo 指令...
    99+
    2023-06-14
  • 实用的Python脚本有哪些
    本篇内容介绍了“实用的Python脚本有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!系统提示工具这个工具用到了win10toast库来...
    99+
    2023-06-30
  • Python数据预处理常用的技巧有哪些
    本篇内容介绍了“Python数据预处理常用的技巧有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!数据集这是一个包含脏数据的示例数据框让我...
    99+
    2023-06-29
  • 如何用 Shell 脚本实现高效的大数据处理?
    随着数据量的不断增加,大数据处理已经成为了现代科技领域中的一个重要问题。而在处理大数据时,Shell 脚本可以发挥出其强大的功能,帮助我们实现高效的数据处理。本文将为大家介绍如何使用 Shell 脚本实现高效的大数据处理,包括如何处理大文件...
    99+
    2023-09-22
    大数据 shell 函数
  • java常用的数据类型有哪些
    java基本数据类型就8种,记住就好了。除了这些都是引用型的了。 java常用的数据类型介绍:(推荐:java视频教程)java四类八种基本数据类型 第一类:整型 byte short int long 第二类:浮点型 float ...
    99+
    2022-01-31
    java
  • 有哪些好用的Shell脚本常用命令
    这篇文章主要讲解了“有哪些好用的Shell脚本常用命令”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“有哪些好用的Shell脚本常用命令”吧!列出所有目录使用量,并按大小排序。代码如下:ls|...
    99+
    2023-06-09
  • JavaScript数据处理的常见问题有哪些
    这篇文章主要介绍“JavaScript数据处理的常见问题有哪些”,在日常操作中,相信很多人在JavaScript数据处理的常见问题有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作