我正在使用Jackson进行json序列化/反序列化。
我正在使用类型信息的全局配置来支持多态。
objectMapper.enableDefaultTyping();
它将类型信息作为每个对象的包装数组包含在内,这对我来说很好。
唯一的问题是我想改变包含信息的格式,想使用下面提到的键:值对。
{@type:com.....xyz}
其中@type是key,XYZ是类名,类似于这样。
您不能将“as属性”包含用于默认类型,因为并非所有值都是对象类型(列表、数组、标量值)。但是您可以使用@JsonTypeInfo
为您确实拥有的POJO指定该样式;您应该能够将其与默认类型混合使用,以便任何属性不起作用的东西都将使用默认类型。