Creating JSON Arrays in Java: Examples with org.json, Gson, and Jackson

Java is a versatile and powerful programming language commonly used for developing various applications. One of the essential tasks when working with Java is handling JSON data. JSON (JavaScript Object Notation) is a lightweight data interchange format that is easy for humans to read and write and easy for machines to parse and generate. This guide will show you how to create a JSON array in Java using different libraries.

1. Using org.json Library

The org.json library provides a straightforward way to work with JSON in Java. To use this library, you need to include the dependency in your project.

1.1. Maven Dependency

<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20210307</version>
</dependency>

1.2. Creating a JSON Array

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

public class JsonArrayExample {
    public static void main(String[] args) {
        JSONArray jsonArray = new JSONArray();

        JSONObject jsonObject1 = new JSONObject();
        jsonObject1.put("name", "John");
        jsonObject1.put("age", 30);

        JSONObject jsonObject2 = new JSONObject();
        jsonObject2.put("name", "Jane");
        jsonObject2.put("age", 25);

        jsonArray.put(jsonObject1);
        jsonArray.put(jsonObject2);

        System.out.println(jsonArray.toString());
    }
}

2. Using Gson Library

Gson is a Java library that can be used to convert Java Objects into their JSON representation. To use this library, add the following dependency.

2.1. Maven Dependency

<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.8</version>
</dependency>

2.2. Creating a JSON Array

import com.google.gson.JsonArray;
import com.google.gson.JsonObject;

public class GsonJsonArrayExample {
    public static void main(String[] args) {
        JsonArray jsonArray = new JsonArray();

        JsonObject jsonObject1 = new JsonObject();
        jsonObject1.addProperty("name", "John");
        jsonObject1.addProperty("age", 30);

        JsonObject jsonObject2 = new JsonObject();
        jsonObject2.addProperty("name", "Jane");
        jsonObject2.addProperty("age", 25);

        jsonArray.add(jsonObject1);
        jsonArray.add(jsonObject2);

        System.out.println(jsonArray.toString());
    }
}

3. Using Jackson Library

Jackson is another popular library for processing JSON in Java. To use this library, include the following dependency in your project.

3.1. Maven Dependency

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.13.0</version>
</dependency>

3.2. Creating a JSON Array

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode;

public class JacksonJsonArrayExample {
    public static void main(String[] args) {
        ObjectMapper mapper = new ObjectMapper();
        ArrayNode arrayNode = mapper.createArrayNode();

        ObjectNode jsonObject1 = mapper.createObjectNode();
        jsonObject1.put("name", "John");
        jsonObject1.put("age", 30);

        ObjectNode jsonObject2 = mapper.createObjectNode();
        jsonObject2.put("name", "Jane");
        jsonObject2.put("age", 25);

        arrayNode.add(jsonObject1);
        arrayNode.add(jsonObject2);

        try {
            String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(arrayNode);
            System.out.println(jsonString);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Conclusion

Creating JSON arrays in Java is straightforward, thanks to the various libraries available. Whether you prefer org.json, Gson, or Jackson, each provides robust tools for handling JSON data. This guide has shown you how to create JSON arrays using these libraries, helping you choose the best one for your needs.

Leave a Comment