1)
import com.google.gson.Gson;
public class Main {
public static void main(String[] args) {
String JsonPessoa = """
{
"nome": "João Silva",
"idade": 25,
"cidade": "São Paulo"
}
""";
Gson gson = new Gson();
Pessoa pessoa = gson.fromJson(JsonPessoa, Pessoa.class);
System.out.println("Objeto Pessoa: "+ pessoa);
}
}
public record Pessoa(String nome, Integer idade, String cidade) {
}
2)
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
public class ConversaoJsonParaObjtoFlexivel {
public static void main(String[] args) {
String jsonPessoa = "{nome:\"Rodrigo\",\"cidade\":\"Brasília\"}"; //Erro: a chave nome deveria estar entre aspas. "{\"nome\":\"Rodrigo\"
Gson gson = new GsonBuilder().setLenient().create(); // O método setLenient() configura o Gson para aceitar JSON malformado ou fora do padrão oficial
Pessoa pessoa = gson.fromJson(jsonPessoa, Pessoa.class);
System.out.println("Objeto Pessoa: " + pessoa);
}
}
3)
public class Livro {
private String titulo;
private String autor;
private Editora editora;
@Override
public String toString() {
return "Livro{" +
"titulo='" + titulo + '\'' +
", autor='" + autor + '\'' +
", editora=" + editora +
'}';
}
}
public class Editora {
private String nome;
private String cidade;
@Override
public String toString() {
return "Editora{" +
"nome='" + nome + '\'' +
", cidade='" + cidade + '\'' +
'}';
}
}
import com.google.gson.Gson;
public class ConversaoJsonAninhado {
public static void main(String[] args) {
String jsonLivro = """
{
"titulo": "Clean Code",
"autor": "Robert C. Martin",
"editora": {
"nome": "Prentice Hall",
"cidade": "New York"
}
}
""";
Gson gson = new Gson();
Livro livro = gson.fromJson(jsonLivro, Livro.class);
System.out.println("Objeto Livro: " + livro);
}
}