后端把Long类型数据传送到前端,出现精度丢失的问题
我这里遇到的问题是,数据库存储的是bigint类型的数据,然后pojo是Long类型的数据.当我把一个长度为18的id传送到页面上的时候,就会出现最后两位是00的现象,只能识别16位的有效数字. 然后我在网上找了几种方法,可能是配置的环境不一样,然后我没能成功.最后使用的是配置mvc的方式,然后成功了 配置的地方是在当前的Controller层下面创建converter包 package cn.itcast.core.converter; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.module.SimpleModule; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; public class LongToStringJsonConverter extends ObjectMapper { public LongToStringJsonConverter() { super(); SimpleModule simpleModule = new SimpleModule(); simpleModule.addSerializer(Long.class, ToStringSerializer.instance); simpleModule.addSerializer(Long.TYPE, ToStringSerializer.instance); registerModule(simpleModule); } } 然后在配置mvc环境直接将一个mvc注解驱动放置在spring的配置文件中. application/json;charset=UTF-8 text/plain;charset=UTF-8 直接丢在配置文件中就可以直接运行成功.
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄

更多精彩