моя запись считается некорректной в чем-то? вывод она делает также
что пишет валик: Класс ParkingLot должен быть отмечен аннотацией @JsonTypeInfo с подходящим набором параметров. При аннотировании класса ParkingLot должны быть использованы такие параметры: (use = JsonTypeInfo.Id.MINIMAL_CLASS, include = As.PROPERTY, property = "className").
что делает MINIMAL_CLASS и include = As.PROPERTY ?
"inclide Определяет механизм, используемый для включения метаданных типа "- как это понимать?
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, property = "className")
public abstract class Vehicle {
protected String name;
protected String owner;
protected int age;
}
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "className")
@JsonSubTypes(@JsonSubTypes.Type(value = ParkingLot.class, name = ".ParkingLot"))
public class ParkingLot {
public String name;
public String city;
public List<Vehicle> vehicles;
public ParkingLot(String name, String city) {
this.name = name;
this.city = city;
}
public void setVehicles(List<Vehicle> vehicles) {
this.vehicles = vehicles;
}
@Override
public String toString() {
return "ParkingLot{" +
"name='" + name + '\'' +
", city='" + city + '\'' +
", vehicles=" + vehicles +
'}';
}
}