Jackson - Primeira Aplicação

Antes de entrar nos detalhes da biblioteca jackson, vamos ver um aplicativo em ação. Neste exemplo, criamos a classe Aluno. Criaremos uma string JSON com os detalhes do aluno, desserializaremos para o objeto aluno e, em seguida, serializaremos para uma String JSON.

Crie um arquivo de classe java chamado JacksonTester em C:\>Jackson_WORKSPACE.

Arquivo: JacksonTester.java

import java.io.IOException;

import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JacksonTester {
   public static void main(String args[]){
   
      ObjectMapper mapper = new ObjectMapper();
      String jsonString = "{\"name\":\"Mahesh\", \"age\":21}";
      
      //map json to student
      try{
         Student student = mapper.readValue(jsonString, Student.class);
         
         System.out.println(student);
         
         jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(student);
         
         System.out.println(jsonString);
      }
      catch (JsonParseException e) { e.printStackTrace();}
      catch (JsonMappingException e) { e.printStackTrace(); }
      catch (IOException e) { e.printStackTrace(); }
   }
}

class Student {
   private String name;
   private int age;
   public Student(){}
   public String getName() {
      return name;
   }
   public void setName(String name) {
      this.name = name;
   }
   public int getAge() {
      return age;
   }
   public void setAge(int age) {
      this.age = age;
   }
   public String toString(){
      return "Student [ name: "+name+", age: "+ age+ " ]";
   }
}

Verify the result

Compile as classes usando javac compilador da seguinte forma:

C:\Jackson_WORKSPACE>javac JacksonTester.java

Agora execute o jacksonTester para ver o resultado:

C:\Jackson_WORKSPACE>java JacksonTester

Verifique a saída

Student [ name: Mahesh, age: 21 ]
{
  "name" : "Mahesh",
  "age" : 21
}

Passos para lembrar

A seguir estão as etapas importantes a serem consideradas aqui.

Etapa 1: Crie o objeto ObjectMapper.

Crie o objeto ObjectMapper. É um objeto reutilizável.

ObjectMapper mapper = new ObjectMapper();

Etapa 2: deserializar JSON para objeto.

Use o método readValue () para obter o objeto do JSON. Passe string json / fonte de string json e tipo de objeto como parâmetro.

//Object to JSON Conversion
Student student = mapper.readValue(jsonString, Student.class);

Etapa 3: serializar objeto para JSON.

Use o método writeValueAsString () para obter a representação de string JSON de um objeto.

//Object to JSON Conversion		
jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(student);