Java接口long类型精度丢失,解决前后端交互Long类型精度丢失问题
雪花算法ID,對應的后端Long類型,前端number類型,它們的精度不一樣,導致精度丟失
現象
雪花算法得到的ID較長,傳到前端后,精度丟失
庫中:23754851322302474
后端:23754851322302474
前端:23754851322302470
解決方法
將Long類型轉成String,再傳給前端
方法一:單個注解@JsonSerialize(using=?ToStringSerializer.class)
private?Long?id;
方法二:統一配置package?com.jiawa.wiki.config;
import?com.fasterxml.jackson.databind.ObjectMapper;
import?com.fasterxml.jackson.databind.module.SimpleModule;
import?com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import?org.springframework.context.annotation.Bean;
import?org.springframework.context.annotation.Configuration;
import?org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;
/**
*?統一注解,解決前后端交互Long類型精度丟失的問題
*?公眾號:甲蛙全棧
*?關聯視頻課程《Spring?Boot?+?Vue3?前后端分離?實戰wiki知識庫系統》
*?https://coding.imooc.com/class/474.html
*/
@Configuration
public?class?JacksonConfig?{
@Bean
public?ObjectMapper?jacksonObjectMapper(Jackson2ObjectMapperBuilder?builder)?{
ObjectMapper?objectMapper?=?builder.createXmlMapper(false).build();
SimpleModule?simpleModule?=?new?SimpleModule();
simpleModule.addSerializer(Long.class,?ToStringSerializer.instance);
objectMapper.registerModule(simpleModule);
return?objectMapper;
}
}
——————?THE END??——————
原文鏈接:http://www.jiawablog.com/detail?id=156521212003094528
甲蛙博客,專注Java全棧技術分享
總結
以上是生活随笔為你收集整理的Java接口long类型精度丢失,解决前后端交互Long类型精度丢失问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java项目processes设置,Jv
- 下一篇: java自定义一个timeout,Tim