当前位置: 代码网 > it编程>编程语言>Javascript > JSON字符串中获取一个指定字段的值四种方式

JSON字符串中获取一个指定字段的值四种方式

2024年09月04日 Javascript 我要评论
一、方式一,引用gson工具测试报文:{"account":"yanxiaosheng","password":"123456"}引入pom<!-- https://mvnrepository.

一、方式一,引用gson工具

测试报文:

{
	"account":"yanxiaosheng",
	"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>

测试类:

import com.google.gson.jsonelement;
import com.google.gson.jsonobject;
import com.google.gson.jsonparser;

@test
public void test() throws exception {
        string json = "{\n" +
                "\t\"account\":\"yanxiaosheng\",\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":"yanxiaosheng",
	"password":"123456",
	"flag":"true"
}

测试类:

import com.fasterxml.jackson.core.jsonprocessingexception;
import com.fasterxml.jackson.databind.jsonnode;
import com.fasterxml.jackson.databind.objectmapper;

@test
    public void test() throws exception {
        string json = "{\n" +
                "\t\"account\":\"yanxiaosheng\",\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":"yanxiaosheng",
	"password":"123456"
}

测试类:

@test
    public void test() throws exception {
        string json = "{\n" +
                "\t\"account\":\"yanxiaosheng\",\n" +
                "\t\"password\":\"123456\"\n" +
                "}";
        objectmapper objectmapper = new objectmapper();
        login login = objectmapper.readvalue(json, deposittest.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 + '\'' +
                    '}';
        }
    }

 注意!!!deposittest.login.class   deposittest  需使用自己写的测试类名

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

测试报文: 

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

引入pom

<dependency>
	<groupid>cn.hutool</groupid>
	<artifactid>hutool-all</artifactid>
	<version>4.1.19</version>
</dependency>

测试类:

  @test
    public void test() throws exception {
        string json = "{\n" +
                "\t\"code\":\"0\",\n" +
                "\t\"message\":\"\",\n" +
                "\t\"data\":[{\n" +
                "\t\t\"account\":\"yanxiaosheng\",\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);
    }

总结

到此这篇关于json字符串中获取一个指定字段的值四种方式的文章就介绍到这了,更多相关json字符串获取指定字段值内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com