如何在全球范围内配置带弹簧的jackson?

如何在全球范围内配置带弹簧的jackson?

问题描述:

序列化反序列化对象我使用Jackson作为流程

To serialize deserialize object I am useing Jackson as flow

@JsonSerialize(using = LocalDateSerializer.class)
@JsonDeserialize(using = LocalDateDeserializer.class)
private LocalDate openingDate 

我该怎么做全局默认,所以我不必将它添加到每个属性?

How do I make this the default globally so I do not have to add it to every property ?

使用XML配置。

如果您使用的是基于Java的配置,则可以创建扩展WebMvcConfigurerAdapter的配置类并执行以下操作:

If you are using Java-based configuration, you can create your configuration class extending WebMvcConfigurerAdapter and do the following:

@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
    final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
    final ObjectMapper objectMapper = new ObjectMapper();
    objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    converter.setObjectMapper(objectMapper);
    converters.add(converter);
    super.configureMessageConverters(converters);
}

在这里,您可以根据需要配置ObjectMapper并将其设置为转换器。

In here, you can configure the ObjectMapper as you like and set it as a converter.