我需要使用两个 jackson 2 对象映射器。两个映射器都使用同一组类。首先,我需要使用标准序列化。在第二个中,我想对所有类使用 ARRAY 形状类型(请参阅https://fasterxml.github.io/jackson-annotations/javadoc/2.2.0/com/fasterxml/jackson/annotation/JsonFormat.Shape.html#ARRAY)。
但我想为我的第二个 ObjectMapper 全局设置此功能。类似mapper.setShape(...)
怎么做?
更新:
我找到了一种覆盖该类配置的方法:
mapper.configOverride(MyClass.class)
.setFormat(JsonFormat.Value.forShape(JsonFormat.Shape.ARRAY));
Run Code Online (Sandbox Code Playgroud)
所以我可以使用 Reflection API 更改我的所有类。
尴尬的是我覆盖了全局设置,但又不能直接设置。