美文网首页
ObjectMapper默认Number转换为Double解决方

ObjectMapper默认Number转换为Double解决方

作者: 黄老斜 | 来源:发表于2017-03-21 10:19 被阅读873次

ObjectMapper默认Number转换为Double解决方式:

设置ObjectMapper的默认转换方式

ObjectMapper mapper = new ObjectMapper()mapper.enable(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS);

所有配置代码:

@CompileStatic
@TypeChecked
@Configuration
class RestTemplateConfig {

    @LoadBalanced
    @Bean
    RestTemplate restTemplate() {
        RestTemplate restTemplate = new RestTemplate()
        List<HttpMessageConverter<?>> converterList = restTemplate.getMessageConverters()
        for (HttpMessageConverter<?> item : converterList) {
            if (item.getClass() == StringHttpMessageConverter.class) {
                item = new StringHttpMessageConverter(StandardCharsets.UTF_8)
            }
            if (item.getClass() == MappingJackson2HttpMessageConverter.class) {
                MappingJackson2HttpMessageConverter converter = item as MappingJackson2HttpMessageConverter
                def mapper = converter.getObjectMapper()
                mapper.enable(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS)
            }
        }
        return restTemplate
    }
}

相关文章

网友评论

      本文标题:ObjectMapper默认Number转换为Double解决方

      本文链接:https://www.haomeiwen.com/subject/vbbwnttx.html