【发布时间】:2020-01-25 09:56:04
【问题描述】:
这是我的要求。我有以下 POJO。
class Car {
private String brandName;
private String color;
private Model model;
}
class Model {
private String modelName;
private String year;
}
如果我得到像下面这样的输入 json,那么它应该被反序列化并映射到两个类。
String json = "{\"brandName\" : \"Toyoto\", \"color\" : \"Silver\", \"model\" : {\"modelName\": \"Corolla\", \"year\": \"2019\"}}"
ObjectMapper mapper = new ObjectMapper();
Car car = mapper.readValue(json, Car.class);
assertEquals("Corolla", car.getModel().getModelName());
这个案子没问题。
但是如果我传递子 json,那也应该在不改变映射类的情况下工作。
String json = "{\"modelName\": \"Corolla\", \"year\": \"2019\"}"
ObjectMapper mapper = new ObjectMapper();
Car car = mapper.readValue(json, Car.class);
assertEquals("Corolla", car.getModel().getModelName());
解决这个问题的任何想法
【问题讨论】:
标签: java json jackson mapping parent-child