Spring boot 配置HttpMessageCoverter
Published on: | Views: 81@Configuration
@ConditionalOnClass(HttpMessageConverter.class)
public class HttpMessageConverterConfiguration {
@Bean
@ConditionalOnMissingBean
public HttpMessageConverters customConverters() {
Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder()
.serializationInclusion(JsonInclude.Include.ALWAYS)
.dateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"))
.serializerByType(Long.class, ToStringSerializer.instance)
.serializerByType(Long.TYPE, ToStringSerializer.instance)
.deserializerByType(Date.class, JsonTool.DateDeserializer.instance)
.modulesToInstall(new ParameterNamesModule());
HttpMessageConverter jsonConverter = new MappingJackson2HttpMessageConverter(builder.build());
HttpMessageConverter xmlConverter = new MappingJackson2XmlHttpMessageConverter(builder.createXmlMapper(true).build());
return new HttpMessageConverters(jsonConverter, xmlConverter);
}
}
或者也可以创建多个HttpMessageConverter的bean, spring boot 会自动加入列表中。