问题描述:
当实体类中的字段为Long类型,且值超过前端js显示的长度范围时会导致前端回显错误。
后端JSON字符串{“id”: 1540951455810646018, “name”: “张三”, …},前端通过data.id获取id时,id的值变成了1540951455810646000,id的位数精度缺失了。
方法1,局部设置,pojo类的字段添加以下属性,
@JsonFormat 用来表示json序列化的一种格式或者类型,shap表示序列化后的一种类型
@JsonFormat(shape = JsonFormat.Shape.STRING)
方法2,全局设置,推荐
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.module.SimpleModule;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.springframework.boot.jackson.JsonComponent;
import org.springframework.context.annotation.Bean;
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder

文章讲述了当实体类Long类型的字段值超出前端显示范围时,如何通过局部设置和全局配置SpringMVCJson中的JacksonObjectMapper解决JSON序列化导致的精度丢失问题。方法包括使用`@JsonFormat`和自定义`SimpleModule`进行配置。
最低0.47元/天 解锁文章
4583

被折叠的 条评论
为什么被折叠?



