首页 > 编程语言 >JSON parse error: Cannot deserialize instance of `java.lang.Long` out of START_OBJECT token

JSON parse error: Cannot deserialize instance of `java.lang.Long` out of START_OBJECT token

时间:2024-08-05 19:26:47浏览次数:11  
标签:lang 依赖 java deserialize 前端 Long 类型 id 精度

这个问题的实际原因就是:

        后端id(Long类型)用的雪花算法生成主键id

        后端生成id位:1820397662671867904

        前端查询id的结果为:1820397662671868000

产生的原因:

        后端生成为19位,前端接受并展示,使用的类型是number类型是16位

        前端的精度比后端小,就会造成精度丢失

解决方案:

        1.如果项目中没有使用到fastjson依赖,先添加依赖

        

        2.在对应的id字段上加上注解,前后端传递字段,序列化的时候使用String类型,不用Long类型

        

标签:lang,依赖,java,deserialize,前端,Long,类型,id,精度
From: https://blog.csdn.net/2201_75950821/article/details/140934883

相关文章

  • java计算字符数量
      publicclassCharCountExample{publicstaticvoidmain(String[]args){Stringtext="Hello,world!Howareyou?";chartargetChar='o';intcount=countChar(text,targetChar);System.out.p......
  • 给vscode配置clangd插件
    一般情况下,我们在vscode里编辑C/C++代码时用的都是微软的c++package,但是这个插件包很多时候无法正确分析出语法,导致大量虚假错误报告,为了解决这个问题,我们首先禁用掉C++插件包,然后准备更换clangd。clangd是一个基于Clangd的分析服务器,方便我们分析代码语法。为了使用它,......
  • JAVA应用CPU跳点自动DUMP工具
    背景在做系统监控时,CPU的使用率是一个关键的指标,它反映了系统的性能稳定性以及是否存在异常情况,能帮助我们了解系统的负载情况。通过监控CPU使用率,可以判断系统是否正常运行或者是否存在性能问题。如果CPU使用率过高,可能表示系统存在资源瓶颈,需要进行优化或升级。CPU监控的难......
  • 计算机毕业设计必看必学!! 85583 springboot高校网上选课系统,原创定制程序, java、PHP
                                                  摘要本论文主要论述了如何使用JAVA语言开发一个高校网上选课系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,......
  • 学习笔记 韩顺平 零基础30天学会Java(2024.8.5)
    P460八大Wrapper类     黄色的父类是number,黑色的是自己独立的P461装箱和拆箱     手动装箱示例:                             intn1=100;                Intergerinterger=newInterger(n1);//......
  • JavaScript 中的闭包和事件委托
    包(Closures)闭包是JavaScript中一个非常强大的特性,它允许函数访问其外部作用域中的变量,即使在该函数被调用时,外部作用域已经执行完毕。闭包可以帮助我们实现数据的私有化、封装和模块化,使代码更简洁、易读和可维护。闭包的定义简单来说,闭包是指有权访问另一个函数作......
  • Java并发—synchronized关键字的应用
    目录1、synchronized适用场景2、synchronized的原理3、synchronized的锁升级4、synchronized的注意事项5、总结synchronized是Java中用于实现线程同步的关键字。它可以在方法级别或代码块级别使用,以确保同一时刻只有一个线程可以访问被同步的代码段。synchronized通......
  • java基础 之 重写equals时为什么要重写hashCode
    文章目录前言回答了解哈希hashCode()总结前言了解equals戳这里→java基础之equals和==的区别请记住这句话:两个对象相同,哈希码一定相同。哈希码相同,两个对象不一定相同。回答只重写equals()方法,不重写hashCode()方法:存在A.equals(B)为true,但是hashCode不......
  • 为什么 Langchain HuggingFaceEmbeddings 模型尺寸与 HuggingFace 上所述的不一样
    我使用的是langchainHuggingFaceEmbeddings模型:dunzhang/stella_en_1.5B_v5。当我查看https://huggingface.co/spaces/mteb/leaderboard时,我可以看到型号是8192。但当我这样做时len(embed_model.embed_query("heyyou"))它给了我1024。请问为什么会有这种差......
  • Java编译和运行的命令
    在Java中,编译和运行Java程序主要使用两个命令:javac和java。这两个命令是JDK(JavaDevelopmentKit)的一部分,分别用于编译Java源代码(.java文件)和运行编译后的Java字节码(.class文件)。编译Java程序编译Java程序时,你使用javac命令。这个命令会读取你的Java源代码文件(.java文件),并编译......