Gson

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda
Gson
Desarrollador
Google Inc.
https://sites.google.com/site/gson/
Información general
Lanzamiento inicial 22 de mayo de 2008; hace 6 años (2008-05-22) (info)
Última versión estable 2.2.2 (info)
2 de julio de 2012; hace 2 años (2012-07-02)
Género Biblioteca
Programado en Java
Sistema operativo Multiplataforma
Licencia Apache License 2.0.
Estado actual Con soporte
En español No No
[editar datos en Wikidata ]

Gson (también conocido como Google Gson) es una biblioteca de código abierto para el lenguaje de programación Java que permite la serialización y deserialización entre objetos Java y su representación en notación JSON.

Características[editar]

  • Permite la conversión entre objetos Java y JSON de una manera sencilla, simplemente invocando los métodos toJson() o fromJson().
  • Permite la conversión de objetos inmutables ya existentes.
  • Soporte para tipos genéricos de Java.
  • Permite la representación personalizada de objetos.
  • Soporte para "Objetos arbitrariamente complejos".

Historia[editar]

La biblioteca Gson nació como un proyecto interno de Google para su propio uso. Finalmente se decidió publicarla bajo una licencia Apache License 2.0.

Ejemplo de uso[editar]

De objeto Java a notación JSON[editar]

Partiendo del siguiente JavaBean:

public class Persona implements Serializable {
    private String nombre;
    private int edad;
 
    public String getNombre() {
        return nombre;
    }
 
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
 
    public int getEdad() {
        return edad;
    }
 
    public void setEdad(int edad) {
        this.edad = edad;
    }
}

Se puede obtener su representación JSON de la siguiente manera:

    Persona persona = new Persona();
    persona.setNombre("Unai");
    persona.setEdad(28);
 
    Gson gson = new Gson();        
    System.out.println(gson.toJson(persona));

Con lo que obtendríamos la salida:

{"nombre":"Unai","edad":28}


De notación JSON a objeto Java[editar]

 
    String json = "{\"nombre\":\"Unai\",\"edad\":28}";
 
    Gson gson = new Gson();
 
    Persona persona = (Persona) gson.fromJson(json, Persona.class);    
 
    System.out.println(persona.getNombre());
    System.out.println(persona.getEdad());

Con lo que obtendríamos la salida:

Unai
28

Enlaces Externos[editar]