jackson 如何将JSON转换为Java对象?

uxh89sit  于 2022-11-23  发布在  Java
关注(0)|答案(2)|浏览(122)

我正在学习Jackson。为了训练我的技能,我想从以下JSON中获取字段“URL”:

我怎么能做到这一点?我不需要整个JSON对象,只是一个字段(URL)。

fxnxkyjh

fxnxkyjh1#

你不需要把JSON转换成Java对象,因为你需要定义POJOS。也许这会有所帮助:-

final ObjectNode yourNode = new ObjectMapper().readValue(<Your_JSON_Input_String>, ObjectNode.class);
if (node.has("URL")) {
    System.out.println("URL :- " + node.get("URL"));
}
41zrol4v

41zrol4v2#

import org.json.JSONArray;
import org.json.JSONObject;

public class Main {
    public static void main(String[] args) throws IOException {
        String jsonString = "{\"data\":[{\"url\":\"http://example.com\"}]}";

        JSONObject jsonObject = new JSONObject(jsonString); // 1

        JSONArray data = jsonObject.getJSONArray("data"); // 2

        JSONObject objectAtIndex0 = data.getJSONObject(0); // 3

        String urlAtObject0 = objectAtIndex0.getString("url"); // 4

        System.out.println(urlAtObject0);
    }
}

1.获取整个JSON字符串的JSON对象
1.获取data作为JSON数组
1.获取所需索引处的JSON对象或在上一步的JSON数组上循环
1.获取JSON对象的url字段

相关问题