Long类型精度丢失

当实体类中的字段为Long类型,且值超过前端js显示的长度范围时会导致前端回显错误。

方法1 使用@JsonSerialize注解的时候把Long自动转为String

复制代码
@JsonSerialize(using = ToStringSerializer.class)
private Long id;

方法2 使用@JsonFormat注解的时候把Long自动转为String

复制代码
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id;

方法3 全局配置org.config.WebMvcConfiguration中添加如下代码

复制代码
   builder.serializerByType(Long.class, ToStringSerializer.instance);
   builder.serializerByType(Long.TYPE, ToStringSerializer.instance);

具体配置如下

复制代码
@Bean
public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
    return builder -> {
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        //返回时间数据序列化
        builder.serializerByType(LocalDateTime.class, new LocalDateTimeSerializer(formatter));
        //接收时间数据反序列化
        builder.deserializerByType(LocalDateTime.class, new LocalDateTimeDeserializer(formatter));
        //序列化Long
        builder.serializerByType(Long.class, ToStringSerializer.instance);
        builder.serializerByType(Long.TYPE, ToStringSerializer.instance);
    };
}
相关推荐
captain3766 小时前
MyBatis(入门5)其他查询操作
java·数据库·spring boot·mybatis
Novproxy_Z6 小时前
商用代理避坑:如何识别商家拿机房 IP 冒充住宅 IP
java·网络·tcp/ip
文丑颜不良啊7 小时前
LeetCode1481~1500题目解析
java·leetcode
2601_962885727 小时前
quotes 字段全解:涨跌幅、振幅、换手率的口径与单位
java·前端·spring
前端精髓7 小时前
调用openrouter的免费API模型
java·前端·javascript
步行cgn8 小时前
Spring MVC 拦截器 Interceptor 详解:从执行流程到实战应用
java·spring·mvc
文丑颜不良啊8 小时前
LeetCode1381~1400题目解析
java·leetcode
开开心心_Every8 小时前
快速隐藏程序工具自定义快捷键一键切换
java·开发语言·前端·spring·智能手机·word·intellij-idea
萧瑟余晖9 小时前
Spring Batch核心模型与快速上手详解
java·spring·batch
缓慢更新9 小时前
AI 辅助生成单测:从接口定义到用例的流水线
java·服务器·前端·网络·数据库·人工智能