我想知道是否有一种方法可以通过使用 Spring3 中的杰克逊功能将 json 数据动态解析为不同的对象。
我有一个父类如下:
public class Recording {
private String id;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
还有两个孩子:
public class Child1Recording extends Recording {
private String program;
public String getProgram() {
return program;
}
public void setProgram(String program) {
this.program = program;
}
}
public class Child2Recording extends Recording {
private String time;
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
}
像这样的控制器:
@RequestMapping(value = "/init/postCheck.ajax", method = RequestMethod.POST)
public @ResponseBody
String postCheck(@RequestBody Recording recording) {
if (recording instanceof Child2Recording) {
return "\"child2 success\"";
} else if (recording instanceof Child1ecording) {
return "\"child1 success\"";
}
return "\"only parent Recording\"";
}
我有不同的场景将不同的 json 数据发布到后端,我想知道是否有办法让控制器像我上面所说的那样工作?
现在,如果我发送 Child2Recording 数据,解析时会发生错误。我无法得到我期望的正确对象。