<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.12.3</version>
</dependency>
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.annotation.JsonProperty;
public class JacksonExample {
public static void main(String[] args) {
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.enable(SerializationFeature.INDENT_OUTPUT);
Car car = new Car("Ford", "Mustang", 2022);
try {
String carJson = objectMapper.writeValueAsString(car);
System.out.println(carJson);
} catch (Exception e) {
e.printStackTrace();
}
String carJson = "{\"brand\":\"Ford\",\"model\":\"Mustang\",\"year\":2022}";
try {
Car carObj = objectMapper.readValue(carJson, Car.class);
System.out.println(carObj);
} catch (Exception e) {
e.printStackTrace();
}
}
static class Car {
@JsonProperty("make")
private String brand;
private String model;
private int year;
public Car() {}
public Car(String brand, String model, int year) {
this.brand = brand;
this.model = model;
this.year = year;
}
@Override
public String toString() {
return "Car [brand=" + brand + ", model=" + model + ", year=" + year + "]";
}
}
}