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
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:
enjoy!!!
En este post vemos una manera de como crear un juego de rompecabezas en java sin el uso de java2d, ademas, las piezas de[...]
SQLite. SQLite es un sistema de gestión de bases de datos relacional compatible con ACID, contenida en una relativamente[...]
El Algoritmo de Aldous-Broder llamado así por dos matemáticos, David Aldous and A. Broder (quienes trabajaban en la inve[...]
Un Tile o azulejo, es una parte seccionada de una imagen, por ejemplo la imagen de abajo (chica anime) esta dividida en[...]
Webcam Capture es un API que permite usar una cámara web incorporada o externa directamente desde código Java utilizand[...]
En este segundo post sobre Android y SQLite, veremos el uso de los métodos de gestión de base de datos más utilizados, e[...]