【异常处理】使用雪花算法的id出现的精度问题
雪花算法产生的id传到前端出现了精度的问题
现象
表的ID主键使用Mybatis plus默认 的雪花算法来生成。
数据库id是bigint类型,后端用Long
后端的id是---> 1297873308628300000
传到前端后---> 1297873308628307970
解决方案1:
直接用注解最快。
/**
* 防止精度丢失
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
https://www.cnblogs.com/zimug/archive/2020/08/25/13557662.html
解决方案2:
主键采用分布式id生成时,一般设置为string类型
当主键采用分布式id生成时,一般设置为string类型,因为分布式id生成位数为19位。后台能用Long接收,但js能接收的最长为16位,所以一般将id设为string类型。

浙公网安备 33010602011771号