É possível transformar um Json em um objeto Java?

Recebo um json com a seguinte estrutura:

[
  {
    "nome": "produto 1",
    "id": "121",
    "valor": " 5.00",
    "quantidade": "2"
  },
  {
    "nome": "produto 2",
    "id": "122",
    "valor": " 2.25",
    "quantidade": "1"
  }
]

No meu projeto, também tenho uma classe com os seguintes atributos:

public class Produto {
	private Long id;
	private String nome;
	private BigDecimal valor;
	private Integer quantidaDeVendas;
}

Queria transformar o Json que recebo em um Produto no Java, ou uma List<Produto>.

Alguém sabe como posso fazer isso?

Estou usando Vraptor 4.

Você pode:

  1. Ler o objeto JSON e criar o teu objeto Java manualmente:

     Long id = //pega do json
     String nome = //pega do json
     BigDecimal valor = // pega do json
     Integer quantidadeDeVendas = // pega do Json
     Produto produto = new Produto(id, nome, valor, quantidadeDeVendas);
    
  2. Utilizar uma biblioteca que faz esse serviço para você, como Gson do Google. Existe uma porrada de biblioteca pronta que faz exatamente isso.

1 curtida