【发布时间】:2017-10-29 23:23:05
【问题描述】:
我需要使用两个 jackson 2 对象映射器。 两个映射器都使用相同的类集。 首先,我需要使用标准序列化。 在第二个中,我想对所有类使用 ARRAY 形状类型(请参阅https://fasterxml.github.io/jackson-annotations/javadoc/2.2.0/com/fasterxml/jackson/annotation/JsonFormat.Shape.html#ARRAY)。
但我想为我的第二个 ObjectMapper 全局设置此功能。 mapper.setShape(...) 之类的东西
怎么做?
UPD:
我找到了一种方法来覆盖类的配置:
mapper.configOverride(MyClass.class)
.setFormat(JsonFormat.Value.forShape(JsonFormat.Shape.ARRAY));
所以我可以使用反射 API 更改我的所有类。
尴尬的是我覆盖了全局设置,却不能直接设置。
【问题讨论】:
-
谢谢!我需要知道如何做到这一点:-)
-
谢谢,您的更新比接受的答案更好,因为它可以满足您的需求。根据接受的答案添加自定义序列化程序似乎是做同样事情的一种更冗长的方式。
标签: java json spring jackson objectmapper