在我的spring boot应用程序中,我使用Jackson通过在需要的地方注入ObjectMapper
来序列化对象。
我找到了这个答案:https://stackoverflow.com/a/32842962/447426
但这会创建一个新的mapper-具有jacksons的默认设置。
另一方面,我在官方文档中找到了this。我不是很了解没有示例代码。
那么如何在Springs默认对象映射器的基础上配置Springs ObjectMapper?
无论在何处注入,此配置都应在“ ObjectMapper”上处于活动状态。
最佳答案
您应该为此使用Jackson2ObjectMapperBuilderCustomizer
@Configuration
public class JacksonConfiguration {
@Bean
public Jackson2ObjectMapperBuilderCustomizer addCustomBigDecimalDeserialization() {
return new Jackson2ObjectMapperBuilderCustomizer() {
@Override
public void customize(Jackson2ObjectMapperBuilder jacksonObjectMapperBuilder) {
jacksonObjectMapperBuilder.featuresToDisable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
// Add your customization
// jacksonObjectMapperBuilder.featuresToEnable(...)
}
};
}
}