Json字符串转成对象

简介: Json字符串转成对象
+关注继续查看

Json字符串转成对象

Hello吖😊,我是孤音(一个你理解不了的程序猿),今天来分享一个小技巧,能够大大滴提高效率额

问题😵

接收到一串JSON格式的字符串,需要获取其中某些字段的值

思路🤪

我们使用阿里巴巴的fastjson,就能够快速的解决这个问题呢😀

步骤😏

首先引入依赖,引入FastJson的依赖(下面会给出的),我这里用了Lombok插件,还需要引入LomBok的依赖

依赖引完后就可以开始编写代码了,下面我给了参考的Demo,大家参照那个逻辑就可以解决遇到的类似的问题啦😁

需要引的依赖

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.54</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.20</version>
            <scope>compile</scope>
        </dependency>

参考Demo

import com.alibaba.fastjson.JSONObject;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import java.io.Serializable;
@Slf4j
public class JsonTest {
    public static void main(String[] args) {
        /**
         * 解析json字符串为JSON对象,用到的是  阿里巴巴的fastjson,需要引依赖的额
         */
        /*
         * json字符串
         {
                "name": "tcx",
                "age": "20",
                "sex": "boy",
                "moreInfo": { "hobby": "编程" }
         }
         */
        String s = "{\n" +
                "        \"name\": \"tcx\",\n" +
                "        \"age\": \"20\",\n" +
                "        \"sex\": \"boy\",\n" +
                "        \"moreInfo\": {\n" +
                "                \"hobby\": \"编程\"\n" +
                "        }\n" +
                "}";
        //解析成JSONObject对象
        JSONObject jsonObject = JSONObject.parseObject(s);
        // 获取jsonObject中的moreInfo字段的内容,并将其转换成JSONObject对象(为了能够取出里面的内容)
        JSONObject data = JSONObject.parseObject(jsonObject.getString("moreInfo"));
        //取出其中的内容
        String hobby = data.getString("hobby");
        System.out.println("hobby = " + hobby);
        System.out.println("========================");
        //下面呢,是通过对象去接收的
        Person person = JSONObject.parseObject(s, Person.class);
        System.out.println(person);
    }
}
@Data
@NoArgsConstructor
@AllArgsConstructor
class Person implements Serializable {
    private String name;
    private String age;
    private String sex;
    private MoreInfo moreInfo;
}
@Data
@NoArgsConstructor
@AllArgsConstructor
class MoreInfo implements Serializable{
    private String hobby;
}

另外也放张运行结果的图嘛

image


相关文章
|
16小时前
|
SQL JSON Apache
Apache Flink SQL目前还不支持直接解析JSON字符串并将其转换为预期的数据类型
Apache Flink SQL目前还不支持直接解析JSON字符串并将其转换为预期的数据类型
8 1
|
6天前
|
存储 JSON NoSQL
|
6天前
|
JSON 编译器 数据格式
uniapp数组转成json字符串
本文主要通过JSON.stringify和replace方法来对数组进行JSON格式化处理.
15 0
|
21天前
|
JSON 数据格式
json对象转字符串和字符串转对象的方法
json对象转字符串和字符串转对象的方法
12 0
|
23天前
|
JSON 数据格式 Python
Python将字符串(str/json)和字典(dict)互转
Python将字符串(str/json)和字典(dict)互转
|
1月前
|
JSON 数据格式
JSON字符串与Map互转
JSON字符串与Map互转
|
2月前
|
存储 JSON Java
【JavaSE专栏88】Java字符串和JSON对象的转换,转来转去就是这么玩!
【JavaSE专栏88】Java字符串和JSON对象的转换,转来转去就是这么玩!
|
2月前
|
JSON Java fastjson
简单实现_实体类与Json字符串互相转换
简单实现_实体类与Json字符串互相转换
22 1
|
2月前
|
JSON Go 数据格式
Golang 语言怎么高效读写 JSON 字符串?
Golang 语言怎么高效读写 JSON 字符串?
17 0
|
2月前
|
JSON 前端开发 JavaScript
JavaWeb14(ajax02判断账号是否存在&JSON介绍&AJAX+JSON字符串和对象之间的转换&JSON实现自动补全)
JavaWeb14(ajax02判断账号是否存在&JSON介绍&AJAX+JSON字符串和对象之间的转换&JSON实现自动补全)
相关产品
云迁移中心
推荐文章
更多