当前位置: 首页 > news >正文

做百度网站接到多少客户电话企业网站建设一般考虑哪些因素

做百度网站接到多少客户电话,企业网站建设一般考虑哪些因素,电子商务网站建设需要哪些步骤,哈尔滨网站建设哪儿好薇文章目录 前言环境准备依赖库 示例代码JSON 数据Java 类定义解析 JSON 数据代码解释 结论 前言 在日常开发中,我们经常需要从 JSON 数据中提取特定的信息。本文将介绍如何使用 Java 和 Gson 库解析 JSON 数据,并通过流式处理提取特定层级的数据。我们将…

文章目录

    • 前言
    • 环境准备
      • 依赖库
    • 示例代码
      • JSON 数据
      • Java 类定义
      • 解析 JSON 数据
      • 代码解释
    • 结论

前言

在日常开发中,我们经常需要从 JSON 数据中提取特定的信息。本文将介绍如何使用 Java 和 Gson 库解析 JSON 数据,并通过流式处理提取特定层级的数据。我们将以一个具体的例子来说明这一过程。

环境准备

依赖库

本文使用了以下依赖库:

  • Gson: 用于 JSON 解析。
  • Lombok: 用于简化 Java 类的编写。

pom.xml 文件中添加以下依赖:

<dependencies><dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId><version>2.8.8</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.20</version><scope>provided</scope></dependency>
</dependencies>

示例代码

JSON 数据

假设我们有以下 JSON 数据,表示多个预算条目及其子条目:

[{"id": 1309,"code": "BD000020","level": 1,"children": [{"id": 1664,"code": "BD000020001","level": 2,"children": [{"id": 1665,"code": "BD000020001001","level": 3}]}]},{"id": 1226,"code": "BD000014","level": 1,"children": [{"id": 1227,"code": "BD000014001","level": 2,"children": [{"id": 1229,"code": "BD000014001001","level": 3}]},{"id": 1228,"code": "BD000014002","level": 2,"children": [{"id": 1230,"code": "BD000014002001","level": 3}]}]}
]

Java 类定义

首先,我们需要定义一个 Java 类来表示预算条目。这里使用 Lombok 的 @Data 注解来简化类的编写。

import lombok.Data;@Data
class Budget {private String code;private Integer level;private List<Budget> children;
}

解析 JSON 数据

接下来,我们使用 Gson 库将 JSON 字符串解析为 List<Budget> 对象。

import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.util.List;public class Level {private static String json = "[...]" // 上述 JSON 数据public static void main(String[] args) {// 将 jsonString 转成 List<Budget> 对象Gson gson = new Gson();List<Budget> budgets = gson.fromJson(json, new TypeToken<List<Budget>>() {}.getType());System.out.println(budgets);// 通过 stream 获取 budget 中所有 level=3 的 codeList<String> codes = budgets.stream().flatMap(budget -> getCodesWithLevelThree(budget)).collect(Collectors.toList());System.out.println(codes);}private static Stream<String> getCodesWithLevelThree(Budget budget) {if (budget.getLevel() == 3) {return Stream.of(budget.getCode());} else if (budget.getChildren() != null) {return budget.getChildren().stream().flatMap(Level::getCodesWithLevelThree);}return Stream.empty();}
}

代码解释

  1. 解析 JSON 数据:

    • 使用 Gson 库将 JSON 字符串解析为 List<Budget> 对象。
    • TypeToken 用于指定泛型类型。
  2. 提取特定层级的数据:

    • 使用 Stream API 递归地遍历每个预算条目及其子条目。
    • getCodesWithLevelThree 方法检查当前条目的层级是否为 3,如果是,则返回其代码;否则,递归处理其子条目。
  3. 输出结果:

    • 打印解析后的 List<Budget> 对象。
    • 打印所有层级为 3 的代码。

结论

通过本文的示例,我们可以看到使用 Java 和 Gson 库解析 JSON 数据并提取特定层级的数据是非常简单和高效的。希望本文能对大家在实际开发中处理类似问题提供帮助。

http://www.yayakq.cn/news/831534/

相关文章:

  • 网站设计常用字体wordpress 导入discuz
  • 苏州建设监督网站首页包头网站建设多少钱
  • python做的网站有什么漏洞网站建设开发协议
  • vue做社区网站阿虎手机站
  • 网站建设零基础教学WordPress文章图片采集插件
  • 什么是全网整合营销seo网络推广培训
  • 兰州网站建设流程wordpress 博客 免费主题
  • 学网站建设需要用哪几个软件汕头模板开发建站
  • 国内地铁建设公司网站国外网站设计 网址
  • 网站转备案济南市莱芜区招聘信息
  • 建设数据库搜索网站工程平台公司做什么的
  • 专业的网站建设公论坛门户静态网页模板
  • 网站结构化数据合肥电商网站开发
  • 微信的微网站模板下载不了网站制作的发展趋势
  • 网站速度诊断永久免费单机版进销存软件
  • 网站开发需要注意的网站备案没有固定电话
  • 怎么做直播室的网站做网站 怎么选择公司
  • 遵义花果园网站建设泰安公司注册
  • 深圳画册设计网站登录自治区建设厅的网站查询
  • 北京市规划网站企业网站的概念
  • 做机械的老板都看什么网站烟台百度网站建设推广
  • 地方门户网站系统汽车seo是什么意思
  • 哪些网站可以做招生信息现如今网站开发用什么框架
  • 学校网站后台管理源码潍坊程序设计网站建设公司
  • 网站免费做app网页浏览器下载安装
  • 外贸cms建站新网域名注册流程
  • 商品网站开发阿里云 wordpress rds
  • 写作网站哪个能得稿费网站建设自助建站云建站
  • 凡科做网站不要钱网页优化seo广州
  • 瑞安地区建设网站论坛网站方案