fastjson问题汇总
1、返回json有部分数据有bug,转换json异常$ref,如:“奶粉” || 已解决 // 解决循环引用,对应的配置见spring-web.xml 解决方式1: JSONObject.toJSONString(list,SerializerFeature.DisableCircularReferenceDetect); 解决方式2: <bean id="fastJsonHttpMessageConverter" 2、fastjson对于float、double类型的数字精度丢失的问题 com.alibaba.fastjson.serializer.DoubleSerializer#write 有这么一段: doubleText = Double.toString(doubleValue); if (doubleText.endsWith(".0")) { doubleText = doubleText.substring(0,doubleText.length() - 2); } 对于float类型也是一样,com.alibaba.fastjson.serializer.FloatCodec#write 解决方案: 、重写序列化器; 、添加ValueFilter: ValueFilter filter = new ValueFilter() { @Override public Object process(Object object,String name,Object value) { if (value instanceof BigDecimal || value instanceof Double || value instanceof Float) { return new BigDecimal(value.toString()); } return value; } }; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |