- Crie uma classe Pessoa usando o conceito de Record em Java, com atributos como nome, idade e cidade. Em seguida, implemente um programa que utiliza a biblioteca Gson para converter um JSON representando uma pessoa em um objeto do tipo Pessoa.
package Modulos;
public record Persona(String nombre, int edad, String ciudad) {
}
System.out.println("Ejercicios 1");
String jsonPersona = "{\"nombre\":\"Ana\",\"edad\":20, \"ciudad\": \"Sao Paulo\"}";
Gson gson = new Gson();
Persona persona = gson.fromJson(jsonPersona, Persona.class);
System.out.println("Objeto Persona: " + persona);
- Modifique o programa do Exercício anterior para permitir a conversão de um JSON mesmo se alguns campos estiverem ausentes ou se houver campos adicionais não representados no objeto Pessoa. Consulte a documentação da biblioteca Gson para flexibilizar a conversão.
package Modulos;
public record Persona(String nombre, int edad, String ciudad) {
}
System.out.println("Ejercicios 1 - 2");
String jsonPersona = "{\"nombre\":\"Ana\",\"edad\":20, \"ciudad\": \"Sao Paulo\"}";
Gson gson = new GsonBuilder().serializeNulls().create();
Persona persona = gson.fromJson(jsonPersona, Persona.class);
System.out.println("Objeto Persona: " + persona);
- Crie uma classe Livro que contenha atributos como título, autor e um objeto representando a editora. Em seguida, implemente um programa que utiliza a biblioteca Gson para converter um JSON aninhado representando um livro em um objeto do tipo Livro.
package Modulos;
public record Libro(String titulo, String autor, Editora editora) {
}
package Modulos;
public record Editora(String nombre, String ciudad) {
}
System.out.println("\nEjercicio 3");
String jsonLibro = "{\"titulo\": \"Harry Potter y la piedra filosofal\", \"autor\":\"J.K Rowling\", \"editora\":{\"nombre\":\"Imprenta123\", \"ciudad\":\"Rio de Janeiro\"}}";
//String jsonLibro = "{\"titulo\":\"Aventuras do Java\",\"autor\":\"Akemi\",\"editora\":{\"nombre\":\"TechBooks\",\"ciudad\":\"São Paulo\"}}";
Gson gson1 = new Gson();
Libro libro = gson1.fromJson(jsonLibro, Libro.class);
System.out.println("Objeto Libro: " + libro);