JSON字符串中获取一个特定字段的值

JSON字符串中获取一个特定字段的值

  • 一、方式一,引用gson工具
  • 二、方式二,使用jackson
  • 三、方式三,使用jackson转换Object
  • 四、方式四,使用hutool,获取报文数组数据

一、方式一,引用gson工具

测试报文:

{
	"account":"zhangsan",
	"password":"123456"
}

引入pom

<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
<dependency>
	<groupId>com.google.code.gson</groupId>
	<artifactId>gson</artifactId>
	<version>2.6.2</version>
</dependency>

代码

package com;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

public class Test {
    public static void main(String[] args) {
        String json = "{\n" +
                "\t\"account\":\"zhangsan\",\n" +
                "\t\"password\":\"123456\"\n" +
                "}";
        JsonParser jsonParser = new JsonParser();
        JsonElement jsonElement = jsonParser.parse(json);
        JsonObject jsonObject = jsonElement.getAsJsonObject();
        String fieldValue = jsonObject.get("account").getAsString();
        System.out.println(fieldValue);
    }
}

在这里插入图片描述

二、方式二,使用jackson

测试报文:

{
	"account":"zhangsan",
	"password":"123456",
	"flag":"true"
}

代码

package com;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

public class Test {
    public static void main(String[] args) throws JsonProcessingException {
        String json = "{\n" +
                "\t\"account\":\"zhangsan\",\n" +
                "\t\"password\":\"123456\",\n" +
                "\t\"flag\":\"true\"\n" +
                "}";
        ObjectMapper objectMapper = new ObjectMapper();
        JsonNode jsonNode = objectMapper.readTree(json);
        String account = jsonNode.get("account").asText();
        int password = jsonNode.get("password").asInt();
        boolean flag = jsonNode.get("flag").asBoolean();
        System.out.println(account);
        System.out.println(password);
        System.out.println(flag);
    }
}

在这里插入图片描述

三、方式三,使用jackson转换Object

测试报文:

{
	"account":"zhangsan",
	"password":"123456"
}

代码

package com;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class Test {
    public static void main(String[] args) throws JsonProcessingException {
        String json = "{\n" +
                "\t\"account\":\"zhangsan\",\n" +
                "\t\"password\":\"123456\"\n" +
                "}";
        ObjectMapper objectMapper = new ObjectMapper();
        Login login = objectMapper.readValue(json, Test.Login.class);
        System.out.println(login.toString());
    }

    public static class Login{
        private String account;
        private String password;
        public String getAccount() {
            return account;
        }
        public void setAccount(String account) {
            this.account = account;
        }
        public String getPassword() {
            return password;
        }
        public void setPassword(String password) {
            this.password = password;
        }
        @Override
        public String toString() {
            return "Login{" +
                    "account='" + account + '\'' +
                    ", password='" + password + '\'' +
                    '}';
        }
    }
}

在这里插入图片描述

四、方式四,使用hutool,获取报文数组数据

测试报文:

{
	"code":"0",
	"message":"",
	"data":[{
		"account":"zhangsan",
		"password":"123456"
	}]
}

引入pom

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

代码

package com;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException;

public class Test {
    public static void main(String[] args) throws JsonProcessingException {
        String json = "{\n" +
                "\t\"code\":\"0\",\n" +
                "\t\"message\":\"\",\n" +
                "\t\"data\":[{\n" +
                "\t\t\"account\":\"zhangsan\",\n" +
                "\t\t\"password\":\"123456\"\n" +
                "\t}]\n" +
                "}";
        JSONObject jsonObject = new JSONObject(json);
        JSONArray jsonArray = jsonObject.getJSONArray("data");
        JSONObject resultObject = jsonArray.getJSONObject(0);
        String account = resultObject.getStr("account");
        System.out.println(account);
    }
}

在这里插入图片描述

OK,就这些吧。

有什么不对的还望指正,书写不易,觉得有帮助就点个赞吧!☺☺☺

参考链接:https://www.cnblogs.com/xbinbin/p/17647956.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/526355.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

医学图像目标跟踪论文阅读笔记 2024.03.14~2024.04.01

“Moving vehicle tracking based on improved tracking–learning–detection algorithm” 2019年 期刊 IET Computer Vision 计算机科学4区 基于改进后的TLD算法&#xff08;ITLD&#xff0c;improved TLD&#xff09;对车辆进行long-term单目标跟踪。 改进内容&#xff1…

Authing 正在寻找云原生应用 / Infra 开发者

我们是 Authing&#xff0c;成立于 2019 年&#xff0c;我们是一家平均年龄 95 后的年轻创业公司&#xff0c;现在是中国最大、最领先的身份云基础设施&#xff08;Identity as a Service, IDaaS&#xff09;提供商&#xff0c;我们的产品服务了全国各地数百家客户和数十家世界…

思迈特:“人工智能+”浪潮里,国产BI到了关键时刻

作为首个“AI程序员”&#xff0c;Devin最近参与了一系列工作&#xff0c;包括在人力资源外包平台Upwork完成编程工作&#xff1b;潜入一家明星创业公司内部群交流&#xff0c;为公司CTO调整代码方案等。这让整个软件工程行业大受震撼&#xff0c;程序员留言“刷屏”。 “AI…

做海外问卷调查有什么技巧和方法?纯干货讲解

做海外问卷调查无外乎几个步骤&#xff1a;选国家、做人设、测题目、刷题目。每个步骤都有一定的技巧&#xff0c;但是它的技巧成分不是很明显。 国家的选择一般以发达国家为主&#xff0c;国家越发达问卷的数量越多&#xff0c;正常白天做题主流国家选择&#xff1a;新加坡、…

蓝桥杯每日一题:有序分数(递归)

给定一个整数 N&#xff0c;请你求出所有分母小于或等于 N&#xff0c;大小在 [0,1] 范围内的最简分数&#xff0c;并按从小到大顺序依次输出。 例如&#xff0c;当 N5 时&#xff0c;所有满足条件的分数按顺序依次为&#xff1a; 0/1,1/5,1/4,1/3,2/5,12/,35,2/3,3/4,4/5,1/…

HarmonyOS实战开发-存储空间统计(仅对系统应用开放)

介绍 本示例通过应用程序包管理、应用空间统计与卷管理模块&#xff0c;实现了查看当前设备存储空间信息、所有安装的应用的存储信息、所有可用卷的存储信息的功能。 效果预览 使用说明&#xff1a; 1.主页面会展示当前设备存储使用的详细信息。 2.点击“应用”&#xff0c;…

继续教育山东第一医科大学临床医学试题及答案,分享几个实用搜题和学习工具 #职场发展#职场发展#笔记

大学生必备的搜题工具&#xff0c;专业课本习题、电子版教材、考研资料、英语四六级等考试题目也能一并搜索&#xff0c;每道题目都有详细的讲解&#xff0c;每个都堪称大学神器。 1.灵兔搜题 这是一个公众号 医学、财经、建筑、计算机、高数、土木.........都可以搜索。 下…

淘宝商品描述API接口:轻松获取商品信息的新途径

淘宝商品描述API接口是淘宝开放平台提供的一种高效、便捷的新途径&#xff0c;旨在帮助开发者轻松获取淘宝商品的详细描述信息。通过这一接口&#xff0c;商家、开发者和用户都能获得商品标题、描述、属性、价格、图片等关键信息&#xff0c;从而满足各种业务需求。 在使用淘宝…

centos7.2系统部署ZooKeeper集群和Kafka集群(集群应用系统商城前置环境)

本次实验将使用centos7.2系统部署部署ZooKeeper集群因为Kafka依赖于ZooKeeper&#xff0c;所以我们一并进行部署。 实验所示的资源软件已上传至百度网盘&#xff0c;需要自取。 链接&#xff1a;https://pan.baidu.com/s/1a-7_iAIX0DBAMkF9bhiTcA?pwd2333 提取码&#xff1…

BLIP 算法阅读记录---一个许多多模态大语言模型的基本组件

论文地址&#xff1a;&#x1f608; 一、环境配置以及数据集准备 数据集准备 官网提供了下载数据集json文件的接口。但是很可能打不开&#xff0c;因为其放在了谷歌云上 https://storage.googleapis.com/ 不过不要担心&#xff0c;网页打不开&#xff0c;咱们可以利用python去…

助力大健康产业发展,深兰科技AI数字伙伴“益小青”亮相世界健博会

4月7日至4月10日&#xff0c;以“健康共同体&#xff0c;科技创未来”为主题的2024年(第六届)世界大健康博览会在武汉隆重举行。大会吸引了千余家知名企业、单位参展&#xff0c;200余位大健康领域重要嘉宾参会。深兰科技携国内首款AI心理陪伴数字人——益小青在展会上公开亮相…

RSA公钥格式公钥结构解析

一次发现RSA der格式公钥2048位&#xff08;256bytes&#xff09;有的长度292有的长度294于是分析了下&#xff1a; [root8f64ba75cbd1 tmp]# ll anewpub.der 1_pub.der -rw------- 1 root root 294 Apr 8 02:48 1_pub.der -rw------- 1 root root 292 Apr 8 02:25 anewpub…

为什么网站速度很重要?

网站速度&#xff0c;也被称为页面加载速度或网站性能&#xff0c;是指用户访问网站时&#xff0c;从发出请求到浏览器完全加载并显示网页内容所需的时间。这个速度的快慢直接影响用户的体验和对网站的整体评价。 为什么网站速度很重要&#xff1f; 网站速度之所以非常重要&a…

数仓调优实战:GUC参数调优

1. 前言 适用版本&#xff1a;【8.1.1及以上】 GaussDB(DWS)性能调优系列专题文章&#xff0c;介绍了数据库性能调优的思路和总体策略。在系统级调优中数据库全局的GUC参数对整体性能的提升至关重要&#xff0c;而在语句级调优中GUC参数可以调整估算模型&#xff0c;选择查询…

移动医保支付

传统就医流程中&#xff0c;涉及“三长一短”的难题&#xff0c;因此根据国家政策及互联网的能力支持&#xff0c;用户在微信或者支付宝上激活医保电子凭证之后&#xff0c;无需在医院窗口排队&#xff0c;即可通过微信小程序或者公众号、支付宝小程序缴纳医保挂号或医保门诊费…

Java常用API_System——常用方法及代码演示

1.System.exit(int status) 方法的形参int status为状态码&#xff0c;如果是0&#xff0c;说明虚拟机正常停止&#xff0c;如果非0&#xff0c;说明虚拟机非正常停止。需要将程序结束时可以调用这个方法 代码演示&#xff1a; public class Test {public static void main(S…

如何远程监控员工的电脑

如何远程监控员工的电脑 为什么要对员工使用电脑的行为进行监控呢&#xff1f;对企业来说是有其必要性的。其必要性主要体现以下4个方面。 1.数据安全与知识产权保护 防止数据泄露&#xff1a;企业内部往往存储着大量的敏感信息&#xff0c;如客户数据、财务资料、商业秘密、…

使用Code开发Django_模版和CSS

转到定义 和 查看定义 在使用Django或任何其他库的过程中&#xff0c;我们可能需要检查这些库中的代码。VS Code提供了两个方便的命令&#xff0c;可以直接导航到任何代码中的类和其他对象的定义&#xff1a; 转到定义 在Python开发环境中&#xff0c;我们可以轻松地对函数、类…

【QT学习】Graphics View框架(高阶篇)- 使用Graphics View框架创建开机动画

【QT学习】Graphics View框架&#xff08;高阶篇&#xff09;- 使用Graphics View框架创建开机动画_qgraphicsview 一步-CSDN博客 前言 在上一篇《Graphics View框架&#xff08;进阶篇&#xff09;- 派生QGraphicsItem类创建自定义图元item》中&#xff0c;我们介绍了创建自定…

助力AIGC暴雨推出4卡液冷图站TR770

2022年&#xff0c;ChatGPT横空出世&#xff0c;正式拉开了生成式人工智能&#xff08;AIGC&#xff09;的序幕&#xff1b;2024年&#xff0c;Sora惊艳亮相&#xff0c;再度将AIGC技术推向高潮&#xff0c;引发了全球范围内的新一轮科技竞赛与创新热潮。从文字创作的灵感迸发&…