In this tutorial, we will show you how to use Jackson library to pretty print JSON Object and String in the console and JSP page.
1. Pretty Print JSON Object
Example to convert Object and print its output in JSON format.
User user = new User();
//...set user data
ObjectMapper mapper = new ObjectMapper();
System.out.println(mapper.writeValueAsString(user));
But the json output is in compact mode.
{"age":29,"messages":["msg 1","msg 2","msg 3"],"name":"mkyong"}
To enable pretty print, use writerWithDefaultPrettyPrinter.
ObjectMapper mapper = new ObjectMapper();
System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(user));
Output
{
"age" : 29,
"messages" : [ "msg 1", "msg 2", "msg 3" ],
"name" : "mkyong"
}
2. Pretty Print JSON String
This is a bit tricky, try to use writerWithDefaultPrettyPrinter again.
String test = "{\"age\":29,\"messages\":[\"msg 1\",\"msg 2\",\"msg 3\"],\"name\":\"mkyong\"}";
System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(test));
Output, not what we want, json is still in compact mode.
"{\"age\":29,\"messages\":[\"msg 1\",\"msg 2\",\"msg 3\"],\"name\":\"mkyong\"}"
To solve it, bind the JSON string to Object before pretty print it.
String test = "{\"age\":29,\"messages\":[\"msg 1\",\"msg 2\",\"msg 3\"],\"name\":\"mkyong\"}";
Object json = mapper.readValue(test, Object.class);
System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(json));
Output
{
"age" : 29,
"messages" : [ "msg 1", "msg 2", "msg 3" ],
"name" : "mkyong"
}
3. Pretty Print JSON in JSP page
To pretty print JSON data in a JSP page or any other HTML page, just wrap the json data with <pre> tag. This example is using Spring MVC and JSP page.
@Controller
@RequestMapping("/anything")
public class AdminController {
@RequestMapping(method = RequestMethod.GET)
public ModelAndView index() {
String test = "{\"age\":29,\"messages\":[\"msg 1\",\"msg 2\",\"msg 3\"],\"name\":\"mkyong\"}";
Object json = mapper.readValue(test, Object.class);
ModelAndView modelandView = new ModelAndView("viewname");
modelandView.addObject("output", mapper.writerWithDefaultPrettyPrinter().writeValueAsString(json));
return modelandViewl;
}
}
In html page.
<pre>${output}</pre>
Article is updated to use
writerWithDefaultPrettyPrinter(), the old defaultPrettyPrintingWriter() is deprecated.
Pingback: Free Classified Ads()
Pingback: see()
Pingback: great post to read()
Pingback: http://makemoney.camkingz.com/()
Pingback: cheap car insurance()
Pingback: alkaline water()
Pingback: view more()
Pingback: water ionizer loans()
Pingback: alkaline water brands()
Pingback: pay per day loan plans()
Pingback: minecraft adventure maps()
Pingback: plan()
Pingback: ionizer payment plan()
Pingback: ionizer payment plan()
Pingback: electrician schools()
Pingback: house blue()
Pingback: plumbing code book 2012()
Pingback: learn more here()
Pingback: electrician jobs in seattle washington()
Pingback: water ionizer pay plan loans()
Pingback: pay per day loans plan()
Pingback: water ionizers()
Pingback: stop parking()
Pingback: youporn()
Pingback: laan penge billigt()
Pingback: car parking()
Pingback: DIRECTV channels()
Pingback: tv packages()
Pingback: platinum-blonde takes meaty ebony bone()
Pingback: tv online, online tv()
Pingback: watch movies online()
Pingback: Blue Coaster33()
Pingback: Como converter objetos Java para JSON e vice versa (Jackson) | Casa Do Desenvolvedor()
Pingback: How to convert Java object to / from JSON (Jackson)()