Avoid Long type of precision is lost

The class can inherit WebMvcConfigurer which added
/****
 * 避免Long类型精度丢失
 * @param converters
 */
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
    converters.stream().filter(c -> c instanceof MappingJackson2HttpMessageConverter).forEach(cvt -> {
        MappingJackson2HttpMessageConverter converter = (MappingJackson2HttpMessageConverter) cvt;
        ObjectMapper objectMapper = converter.getObjectMapper();

        SimpleModule simpleModule = new SimpleModule();
        simpleModule.addSerializer(Long.class, ToStringSerializer.instance);
        simpleModule.addSerializer(Long.TYPE, ToStringSerializer.instance);

        objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
        objectMapper.registerModule(simpleModule);
        objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);

    });
}
Published 51 original articles · won praise 1 · views 20000 +

Guess you like

Origin blog.csdn.net/panlongbao_918/article/details/104222907