丨钢琴丶

使用雪花算法ID,传回前端,末几位变成零的解决方法

最近项目中使用雪花算法ID,发现传回前端时,末几位被吃了,全都为0,出现精度损失现象。

查询资料后发现,雪花算法生成的id长度有19位,而json在序列化中会将数字类型转换为16位,这样后面的精度就丢失了。

所以有如下几种解决方案;

1,所有id使用String类型,弊端是字符做id查询效率比较低,

2,是使用配置类或者注解,改变序列化过程,

最终选用在id上加上该注解@JsonSerialize(using= ToStringSerializer.class)

posted on 2021-11-22 11:29  丨钢琴丶  阅读(807)  评论(0编辑  收藏  举报

导航