Google GSON es una biblioteca simple de serialización/deserialización basada en Java para convertir objetos Java en su representación JSON. También se puede utilizar para convertir una string JSON en un objeto Java equivalente. Es una extensión confiable, rápida y eficiente de la biblioteca estándar de Java. También está altamente optimizado. Supone que Java ya está instalado en su entorno local.
Configuración de la ruta para Linux
La variable de entorno PATH debe configurarse correctamente. Si tiene problemas para hacer esto, consulte la documentación de su shell en particular. Por ejemplo: si usa bash como shell, entonces agregaría lo siguiente al final de su archivo ‘.bashrc’:
export PATH=$PATH:/path/to/java
Configuración de la ruta para Windows
Supone que ha instalado correctamente Java en C:\Program Files\java\jdk-directory
Edite el archivo ‘ C:\autoexec.bat’ y agregue la siguiente línea al final:
SET PATH=%PATH%:C:\Program Files\java\jdk\bin
Descargar Archivo GSON
Descargue el archivo GSON más reciente: https://search.maven.org/artifact/com.google.code.gson/gson/2.8.6/jar
(o)
Maven:
<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.6</version> </dependency>
Establecer variable CLASSPATH
A mano:
sistema operativo |
Producción |
---|---|
linux | export CLASSPATH=$CLASSPATH:$GSON_HOME/gson-2.8.6.jar:. |
ventanas |
Establezca la variable de entorno CLASSPATH en %CLASSPATH%;%GSON_HOME%\gson-2.8.6.jar;:; |
Mac | export CLASSPATH=$CLASSPATH:$GSON_HOME/gson-2.8.6.jar:. |
Con la ayuda de IDE: En IntelliJ IDEA: Siga los pasos a continuación
Pasos: Haga clic con el botón derecho en Proyecto -> Abrir configuración del módulo -> Bibliotecas -> Haga clic en + -> Agregar tarro GSON -> Aplicar y Aceptar
Aplicación GSON
Java
import java.io.*; import java.util.List; public class Staff { private String name; private int age; private int salary; private List<String> skillSet; public int getSalary() { return salary; } public void setSalary(int salary) { this.salary = salary; } 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 List<String> getSkillSet() { return skillSet; } public void setSkillSet(List<String> skillSet) { this.skillSet = skillSet; } }
Java
import com.google.gson.Gson; import java.io.*; import java.io.FileWriter; import java.io.IOException; import java.util.Arrays; import java.util.List; public class GSONExample { public static void main(String[] args) { Gson gson = new Gson(); Staff staff = createStaffObj( "Anurag", 18, 100, Arrays.asList("DevOps", "Machine Learning", "Open Source")); // Java Object to String String json = gson.toJson(staff); // Java Object to a file try (FileWriter writer = new FileWriter( "/home/anurag/gsonexample.txt")) { gson.toJson(staff, writer); } catch (IOException e) { e.printStackTrace(); } } public static Staff createStaffObj(String name, int age, int salary, List<String> skillSet) { Staff staff = new Staff(); staff.setName(name); staff.setAge(age); staff.setSalary(salary); staff.setSkillSet(skillSet); return staff; } }
De forma predeterminada, GSON escribe JSON en modo compacto.
{"name":"Anurag","age":18,"salary":100,"skillSet":["DevOps","Machine Learning","Open Source"]}
Después de habilitar el modo de impresión bonita:
import com.google.gson.GsonBuilder; import java.io.FileWriter; import java.io.IOException; import java.util.Arrays; import java.util.List; public class GSONExample { public static void main(String[] args) { Gson gson = new GsonBuilder().setPrettyPrinting().create(); ... ... ... } }
{ "name": "Anurag", "age": 18, "salary": 100, "skillSet": [ "DevOps", "Machine Learning", "Open Source" ] }
Convertir Java Object a JSON es comparativamente más fácil que analizar con la API de transmisión de Gson. De forma predeterminada, JSONWriter escribe JSON en forma compacta, pero podemos configurar la sangría para la impresión bonita.
Publicación traducida automáticamente
Artículo escrito por anuragsinghrajawat22 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA