FastJSON 后端返回Long型 前段精度丢失的问题

前端之家收集整理的这篇文章主要介绍了FastJSON 后端返回Long型 前段精度丢失的问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

解决方法就是将Long型转换为字符串---全局配置方案如下:

  @Override
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        // 初始化转换器
        FastJsonHttpMessageConverter fastConvert = new FastJsonHttpMessageConverter();
        // 初始化一个转换器配置
        FastJsonConfig fastJsonConfig = new FastJsonConfig();
        JSON.DEFFAULT_DATE_FORMAT = "yyyy-MM-dd HH:mm";
        fastJsonConfig.setSerializerFeatures(SerializerFeature.BrowserCompatible,SerializerFeature.WriteNullListAsEmpty,SerializerFeature.PrettyFormat,SerializerFeature.WriteDateUseDateFormat,SerializerFeature.WriteNullStringAsEmpty,SerializerFeature.WriteMapNullValue,SerializerFeature.DisableCircularReferenceDetect);
        //解决Long转json精度丢失的问题
        SerializeConfig serializeConfig = SerializeConfig.globalInstance;
        serializeConfig.put(BigInteger.class,ToStringSerializer.instance);
        serializeConfig.put(Long.class,ToStringSerializer.instance);
        serializeConfig.put(Long.TYPE,ToStringSerializer.instance);
        fastJsonConfig.setSerializeConfig(serializeConfig);
        // 将配置设置给转换器并添加到HttpMessageConverter转换器列表中
        fastConvert.setFastJsonConfig(fastJsonConfig);
        converters.add(fastConvert);
    }

猜你在找的Json相关文章