假设将对象序列化为JSON时,包括实际对象的类名,在该类上使用以下注释:
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, include = JsonTypeInfo.As.PROPERTY, property = "@type")
class MyClass {
String foo;
}
因此,JSON的一个示例:
{"@type": "com.example.MyClass", "foo": "bar"}
这个可以在不指定类型的情况下反序列化吗?我指的是甚至不指定其超类型。就像这样:
objectMapper.readValue(value, Object.class);
这个实际上并不起作用,它会返回一个 Map。