In this tutorials, I am going to show you how to format JSON output using Jackson’s PrettyPrinter.

Format JSON Output PrettyPrinter :

We can format the JSON string with a readable format. In the previous tutorials, when we convert java Employee object to JSON, or convert Java Map to JSON string in both cases we got the JSON output in a single line like below:

{"studentId":1001,"studentName":"Rahul","roleNumber":"54","standard":"5th"}

If we want to format the above output like below:

{
"studentId" : "1001",
"studentName" : "Rahul",
"roleNumber" : "54",
"standard" : "5th"
}

 

We can format the JSON output using writerWithDefaultPrettyPrinter() method available in ObjectMapper class.

Format JSON Output Example :

[java]

package com.onlinetutorialspoint.json;

import java.util.HashMap;
import java.util.Map;

import org.codehaus.jackson.map.ObjectMapper;

public class Formate_JSON_Output {
    public static void main(String[] args) {
        Map<String,String> scoreMap = new HashMap<String,String>();
        scoreMap.put("Dhoni", "102");
        scoreMap.put("Yuvraj", "94");
        scoreMap.put("Raina", "82");
        scoreMap.put("Kohli", "120");
        ObjectMapper mapperObj = new ObjectMapper();
        try {
            String jsonFormat = mapperObj.writerWithDefaultPrettyPrinter().writeValueAsString(scoreMap);
            System.out.println(jsonFormat);
        } catch (Exception e) {
            e.printStackTrace();
        }
        
    }
}

[/java]

Output:

{
"Kohli" : "120",
"Yuvraj" : "94",
"Dhoni" : "102",
"Raina" : "82"
}

Happy Learning 🙂