Convertir JSON a objeto Java

Mohammad Irfan 12 octubre 2023
  1. Convierta JSON en un objeto Java usando la biblioteca Gson en Java
  2. Convierta JSON a Java Object usando la biblioteca Jackson en Java
Convertir JSON a objeto Java

Este tutorial presenta cómo convertir JSON a un objeto Java en Java.

Para convertir JSON en un objeto Java, podemos usar varias bibliotecas como Jackson y Gson. Jackson es una biblioteca de manejo JSON basada en Java creada por Apache. De manera similar, Gson se usa para manejar JSON y es creado por Google. Podemos usar tanto la biblioteca para convertir JSON en un objeto Java y viceversa.

Entonces, comencemos y veamos algunos ejemplos de trabajo.

Convierta JSON en un objeto Java usando la biblioteca Gson en Java

En este ejemplo, usamos la biblioteca Gson y su clase Gson que lee datos JSON y los convierte para el tipo especificado (Student). Después de la conversión, podemos obtener datos utilizando captadores de la clase Student. Vea el ejemplo a continuación.

import com.google.gson.Gson;

public class SimpleTesting {
  public static void main(String[] args) throws InterruptedException {
    String json = "" "
    {
      "firstName" : "Rohan",
                    "lastName" : "Singh",
                                 "dateOfBirth" : "1990-12-15",
                                                 "address" : "34/Art",
                                                             "city" : "California",
                                                                      "contact" : "85652321"
    }
    "" ";
        Student data = new Gson().fromJson(json, Student.class);
    System.out.println(data.getFirstName());
    System.out.println(data.getLastName());
    System.out.println(data.getCity());
  }
}

class Student {
  private String firstName;
  private String lastName;
  private String dateOfBirth;
  private String address;
  private String city;
  private String contact;

  public String getFirstName() {
    return firstName;
  }
  public void setFirstName(String firstName) {
    this.firstName = firstName;
  }
  public String getLastName() {
    return lastName;
  }
  public void setLastName(String lastName) {
    this.lastName = lastName;
  }
  public String getDateOfBirth() {
    return dateOfBirth;
  }
  public void setDateOfBirth(String dateOfBirth) {
    this.dateOfBirth = dateOfBirth;
  }
  public String getAddress() {
    return address;
  }
  public void setAddress(String address) {
    this.address = address;
  }
  public String getCity() {
    return city;
  }
  public void setCity(String city) {
    this.city = city;
  }
  public String getContact() {
    return contact;
  }
  public void setContact(String contact) {
    this.contact = contact;
  }
}

Producción :

Rohan
Singh
California

Convierta JSON a Java Object usando la biblioteca Jackson en Java

Usamos la biblioteca Jackson y su clase ObjectMapper que lee datos JSON y convierte para el tipo especificado (Student). Después de la conversión, podemos obtener datos utilizando captadores de la clase Student.

Vea el ejemplo a continuación.

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import java.io.File;
import java.io.IOException;
public class SimpleTesting {
  public static void main(String[] args) throws InterruptedException {
    ObjectMapper mapper = new ObjectMapper();
    mapper.enable(SerializationFeature.INDENT_OUTPUT);
    try {
      Student student = mapper.readValue(new File("json-file.json"), Student.class);
      System.out.println("First Name: " + student.getFirstName());
      System.out.println("Last Name: " + student.getLastName());
      System.out.println("City: " + student.getCity());
      System.out.println("Address: " + student.getAddress());
      System.out.println("Contact: " + student.getContact());
      System.out.println("Date of Birth: " + student.getDateOfBirth());
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

class Student {
  private String firstName;
  private String lastName;
  private String dateOfBirth;
  private String address;
  private String city;
  private String contact;

  public String getFirstName() {
    return firstName;
  }
  public void setFirstName(String firstName) {
    this.firstName = firstName;
  }
  public String getLastName() {
    return lastName;
  }
  public void setLastName(String lastName) {
    this.lastName = lastName;
  }
  public String getDateOfBirth() {
    return dateOfBirth;
  }
  public void setDateOfBirth(String dateOfBirth) {
    this.dateOfBirth = dateOfBirth;
  }
  public String getAddress() {
    return address;
  }
  public void setAddress(String address) {
    this.address = address;
  }
  public String getCity() {
    return city;
  }
  public void setCity(String city) {
    this.city = city;
  }
  public String getContact() {
    return contact;
  }
  public void setContact(String contact) {
    this.contact = contact;
  }
}

Producción :

First Name: Rohan
Last Name: Singh
City: California
Address: 34/Art
Contact: 85652321
Date of Birth: 1990-12-15

Artículo relacionado - Java JSON

Artículo relacionado - JSON Object