Home >Java >javaTutorial >How to access JSONNode's JSON fields, arrays and nested objects in Java?

How to access JSONNode's JSON fields, arrays and nested objects in Java?

WBOY
WBOYforward
2023-08-30 23:05:05749browse

How to access JSONNodes JSON fields, arrays and nested objects in Java?

A JsonNode is Jackson's JSON tree model, which can read JSON as a JsonNode instance and write JsonNode to JSON. We can use Jackson to read JSON into a JsonNode by creating an ObjectMapper instance and calling the readValue() method. We can use the get() method of the JsonNode class to access the field, array or nested object. We can use the asText() method to return a valid string representation and the asInt() method of the JsonNode class to convert the node's value to a Java int.

In the example below, we can access JsonNode’s JSON fields, arrays, and nested objects.

Example

import com.fasterxml.jackson.databind.*;
import java.io.*;
public class ParseJSONNodeTest {
   public static void main(String args[]) {
      String jsonStr = "{ \"name\" : \"Raja\", \"age\" : 30," +
                       " \"technologies\" : [\"Java\", \"Scala\", \"Python\"]," +
                       " \"nestedObject\" : { \"field\" : \"value\" } }";
      ObjectMapper objectMapper = new ObjectMapper();
      try {
         JsonNode node = objectMapper.readValue(jsonStr, JsonNode.class);
         JsonNode nameNode = node.get("name");
         String name = nameNode.asText();
         System.out.println(name);
         JsonNode ageNode = node.get("age");
         int age = ageNode.asInt();
         System.out.println(age);
         JsonNode array = node.get("technologies");
         JsonNode jsonNode = array.get(1);
         String techStr = jsonNode.asText();
         System.out.println(techStr);
         JsonNode child = node.get("nestedObject");
         JsonNode childField = child.get("field");
         String field = childField.asText();
         System.out.println(field);
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

Output

Raja
30
Scala
value

The above is the detailed content of How to access JSONNode's JSON fields, arrays and nested objects in Java?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete