Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Java / GSON: Convertir array JSON en List de objetos Java

GSON: Convertir array JSON en List de objetos Java

Por jc mouse lunes, julio 24, 2017

En este ejemplo tenemos un array en JSON el cual representa una lista de alumnos y queremos llevar este a una lista en java usando la librería GSON de Google Inc.

Array JSON

JSON List

Clase Alumno equivalente a cada item del array JSON

/**
 * @see https://www.jc-mouse.net/
 * @author jc mouse
 */
public class Alumno {
    
    private int id;
    private String nombre;
    private String apellidos;

    public Alumno() {}

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public String getApellidos() {
        return apellidos;
    }

    public void setApellidos(String apellidos) {
        this.apellidos = apellidos;
    }
    
}

Deserializando el array JSON

Para deserializar el array JSON en un List Java, utilizamos la clase TypeToken<T> y lo tipamos con el List<Alumno> e invocamos a su método getType() como se ve en el siguiente ejemplo:

import com.google.gson.Gson;
import com.google.gson.JsonSyntaxException;
import com.google.gson.reflect.TypeToken;
import java.util.List;

public class NewMain {

    public static void main(String[] args) {
        String jsonString = "[{\"id\":1,\"nombre\":\"Ana\",\"apellidos\":\"Macia Pajas\"},"
                + "{\"id\":2,\"nombre\":\"Antonio\",\"apellidos\":\"Sueltamelo\"},"
                + "{\"id\":3,\"nombre\":\"Elba\",\"apellidos\":\"Lazo\"}]";
        try{
            Gson gson = new Gson();                
            List<Alumno> listAlumnos = gson.fromJson(jsonString, new TypeToken<List<Alumno>>(){}.getType());     
            if( listAlumnos!= null ){
                for(Alumno object : listAlumnos){
                    System.out.println("\nAlumno : " + object.getNombre() + " " + object.getApellidos() );    
                }
            }
        }catch(JsonSyntaxException e){
            System.err.println("JsonSyntaxException: " + e.getMessage());
        }    
    }
    
}

Una vez que ya tenemos el List Java, imprimimos todos los alumnos de la lista:

Console REST

enjoy!!!

Tags

Artículos similares

Ejecutables con Launch4J

Launch4j es un software OpenSource hecho en Java que permite crear ejecutables para programas escritos en ese mismo leng[...]

Bandera en Alto

EL 6 de agosto de cada año se recuerda una de las fechas más importantes de la historia boliviana, porque el 6 de Agosto[...]

Evaluar expresiones matemáticas en Java con JavaScript

Java 8 trae consigo una nueva versión del motor de JavaScript llamada Nashorn, este motor introduce mejoras de rendimien[...]

SOAP .:. Cliente android

En esta oportunidad construiremos una aplicación android que nos permitirá consumir  un servicio web utilizando la libre[...]

Terremoto en Venezuela: Así fue cómo la tecnología de Google alertó a millones segundos antes del sismo

Los usuarios de Android en Venezuela este 24 de junio de 2026, escucharon una alarma estridente segundos antes de que el[...]

Rompecabezas [Código Fuente]

Hace tiempo me pidieron el código fuente de un juego de Puzzle de Neon Genesis Evangelión, este juego es completo, tiene[...]