【发布时间】:2020-02-19 07:18:09
【问题描述】:
当 objectmapper 读取继承属性的值时,JsonDeserialize 不起作用。
车辆类别
@Getter
@Setter
@JsonDeserialize(builder = Vehicle.VehicleBuilder.class)
@Builder(builderClassName = "VehicleBuilder", toBuilder = true)
public class Vehicle{
private String name;
private String noOfTyres;
@JsonPOJOBuilder(withPrefix = "")
public static class VehicleBuilder{
}
}
汽车类
@Getter
@Setter
@JsonDeserialize(builder = Car.CarBuilder.class)
@Builder(builderClassName = "CarBuilder", toBuilder = true)
public class Car extends Vehicle {
private String carType;
@JsonPOJOBuilder(withPrefix = "")
public static class CarBuilder extends VehicleBuilder {
}
}
我不想在两个类中都创建@NoArgsConstructor ,@AllArgsConstructor。
我在Car car = om.readValue(jsonValue,Car.class); 时的问题
当我将 Json 解析为 java 对象时,父类属性设置不正确。
到目前为止,我正在使用 @NoArgsConstructor ,@AllArgsConstructor 来解决用例问题。
有什么办法可以和@JsonDeserialize and @JsonPOJOBuilder一起使用吗?
【问题讨论】:
标签: java json builder json-deserialization