Jump to content

Jackson (API)

From Wikipedia, the free encyclopedia
Jackson
Stable release
2.19.2 / July 18, 2025; 3 months ago (2025-07-18)
Repository
Operating systemCross-platform
TypeAPI for JSON
LicenseApache License 2.0
Websitegithub.com/FasterXML/jackson Edit this on Wikidata

In computing, Jackson is a high-performance JSON processor for Java. Its developers extol the combination of fast, correct, lightweight, and ergonomic attributes of the library.[1][2]

Implementation

[edit]

Jackson provides multiple approaches to working with JSON, including using binding annotations on POJO classes for simple use cases.[3][1]

Usage example

[edit]

Sample code for reading and writing with POJOs may look like the following:[1]

package org.wikipedia.examples;

import java.io.IOException;

import com.fasterxml.jackson.databind.ObjectMapper;

record Person(int id, String firstName, String lastName) {}

public class ReadWriteJackson {
    public static void main(String[] args) throws IOException {
        ObjectMapper mapper = new ObjectMapper();
   
        String jsonInput = "{\"id\":0,\"firstName\":\"Robin\",\"lastName\":\"Wilson\"}";
        Person q = mapper.readValue(jsonInput, Person.class);
        System.out.printf("Read and parsed Person from JSON: %s%n", q);
   
        Person p = new Person(1, "Roger", "Rabbit");
        System.out.printf("Person object %s as JSON =%n");
        mapper.writeValue(System.out, p);
    }
}

References

[edit]
  1. ^ a b c "History". FasterXML. Archived from the original on 11 February 2016. Retrieved 12 February 2016.
  2. ^ Young, T.M. (2013). The Jackson Cookbook. Leanpub.
  3. ^ Darwin, I.F. (2014). Java Cookbook (3rd ed.). Sebastopol, USA: O'Reilly. pp. 656–657.
[edit]