enrique-j
1/22/2018 - 6:25 PM

ObjectMapper

http://www.baeldung.com/jackson-object-mapper-tutorial

Este artículo se centra en comprender la clase Jackson ObjectMapper y cómo serializar los objetos Java en JSON y deserializar la cadena JSON en objetos Java. Para comprender más acerca de la biblioteca de Jackson en general, el Tutorial de Jackson es un buen lugar para comenzar.

writeValue

se puede usar para serializar cualquier objeto Java como salida JSON.

Usaremos la siguiente clase de Auto con dos campos como objeto para serializar o deserializar a lo largo de este artículo:

Objeto Java para JSON

Un ejemplo simple de serialización de objetos Java en JSON utilizando el método writeValue de la clase ObjectMapper :

ObjectMapper objectMapper = new ObjectMapper();
Car car = new Car("yellow", "renault");
objectMapper.writeValue(new File("target/car.json"), car);

El resultado de lo anterior se puede ver en el archivo de la siguiente manera:

{"color":"yellow","type":"renault"}

Los métodos writeValueAsString y writeValueAsBytes de la clase ObjectMapper generan un JSON a partir de un objeto Java y devuelven el JSON generado como una cadena o como una matriz de bytes:

String carAsString = objectMapper.writeValueAsString(car);

JSON a objeto Java

A continuación se muestra un ejemplo simple de cadena JSON convertida a un objeto Java utilizando la clase ObjectMapper :


String json = "{ \"color\" : \"Black\", \"type\" : \"BMW\" }";
Car car = objectMapper.readValue(json, Car.class)

La función readValue también acepta otras formas de entrada como un archivo que contiene cadena JSON:

Car car = objectMapper.readValue(new File("target/json_car.json"), Car.class);

o una URL:

Car car = objectMapper.readValue(new URL("target/json_car.json"), Car.class);