一、背景
今天在开发的过程中发现,后端有个Long类型的id,返回到前端,数值发生了变化,调查后发现是因为超过了前端能接收的最大数值,从而导致精度丢失。
二、解决方案
后来分析后决定,把Long转成String类型给到前台,方案就是在实体类id字段上增加注解,因为系统使用的是jackson,所以加上@JsonFormat(shape = JsonFormat.Shape.STRING)就可以了。
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id;
如果使用的是fastjson,加上@JSONField(serializeUsing = ToStringSerializer.class)注解也可以解决。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/154499.html