2

我在我的对象映射器上启用了 defaultTyping,如下所示:

ObjectMapper mapper = new ObjectMapper();
mapper.enableDefaultTyping();
mapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);

序列化后,我的 JSON 字符串不包含类型的类型信息java.lang.*(例如java.lang.String)。我猜这是设计使然。

我遇到的问题是,在反序列化期间,有两种方法匹配:一种接受 Enum,另一种接受 String。当然,杰克逊无法决定使用哪种方法。我希望如果类型信息包含在序列化步骤中,这应该不是问题。

我已经走上了@JsonIgnore和 Mixins 的道路,不幸的是这是不可行的。

知道如何让杰克逊成功反序列化吗?

4

0 回答 0