Desafio 4. Defina uma classe chamada Veiculo com os atributos necessários. Em seguida, crie um programa que instancia um objeto Veiculo, serializa esse objeto para JSON usando a biblioteca Gson e imprime o resultado.
package entities;
public class Veiculo {
private String marca;
private String modelo;
private Integer qtdePortas;
private Integer anoFabricacao;
public Veiculo(String marca, String modelo, Integer qtdePortas, Integer anoFabricacao) {
this.marca = marca;
this.modelo = modelo;
this.qtdePortas = qtdePortas;
this.anoFabricacao = anoFabricacao;
}
public String getMarca() {
return marca;
}
public void setMarca(String marca) {
this.marca = marca;
}
public String getModelo() {
return modelo;
}
public void setModelo(String modelo) {
this.modelo = modelo;
}
public Integer getQtdePortas() {
return qtdePortas;
}
public void setQtdePortas(Integer qtdePortas) {
this.qtdePortas = qtdePortas;
}
public Integer getAnoFabricacao() {
return anoFabricacao;
}
public void setAnoFabricacao(Integer anoFabricacao) {
this.anoFabricacao = anoFabricacao;
}
}
package main;
import com.google.gson.FieldNamingPolicy;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import entities.Veiculo;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class Principal {
public static void main(String[] args) throws IOException {
List<Veiculo> veiculos = new ArrayList<>();
Veiculo veiculo = new Veiculo("FIAT","UNO MILLE", 2, 1995);
Veiculo veiculo1 = new Veiculo("CHEVROLET", "KADETT",2, 1991);
Veiculo veiculo2 = new Veiculo("FORD", "MAVERICK", 2, 1979);
Veiculo veiculo3 = new Veiculo("VOLKSWAGEN", "FUSCA", 2, 1972);
veiculos.add(veiculo);
veiculos.add(veiculo1);
veiculos.add(veiculo2);
veiculos.add(veiculo3);
Gson gson = new GsonBuilder()
.setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE)
.setPrettyPrinting()
.create();
String json = gson.toJson(veiculos);
System.out.println(json);
FileWriter meusVeiculos = new FileWriter("veiculos.json");
meusVeiculos.write(gson.toJson(veiculos));
meusVeiculos.close();
}
}