mybatise-plus的id过长问题
一、问题情景
笔者在做mp插入数据库(id已设置为自增)操作时,发现新增数据的id过长,结果导致前端JS拿到的数据出现了精度丢失问题,原因是后端id的类型是Long。在网上查了一下,只要在该属性上加上如下注解就可以
@TableId(value = "id",type = IdType.AUTO)private Long id;
但加入后,我又新增了一条数据,结果数据库id依旧是mp雪花算法生成的id
二、问题解决
查阅资料发现,是因为之前使用的还是过长的id,我们即使在数据库中直接添加数据,也会是长的自增id,只有重置id才可以
如何重置数据库id?笔者在论坛上查到以下方法
alter table 你的表名字 drop 你的表的主键;
alter table 你的表的名字 add 你的表的主键 int not null primary key auto_increment first;
效果如下

发现id果然重置了,新增一条数据,结果id自增结果是14,那么到这里问题就解决了。我重启项目,前端添加用户,数据库id是15,完成了表id自增效果。
效果如下

三、总结反思
mybatise-plus的雪花算法自增id,产生的id数太大,超过了JavaScript能够解析的最大范围,这样会导致精度丢失,前台获取到的id和后台数据库中不一致,从而导致无法进行增删改操作。当id定义为Long类型后,生成的id是一个19位数,而 js 能够支持解析的范围是在-9007199254740992到+9007199254740992之间,最大值才16位数。
如果前面不小心使用了mp自增策略,感觉id过长,想使用数据库自增id,就必须重置id,重置方法如下
alter table 你的表名字 drop 你的表的主键;
alter table 你的表的名字 add 你的表的主键 int not null primary key auto_increment first;
相关文章:
mybatise-plus的id过长问题
一、问题情景 笔者在做mp插入数据库(id已设置为自增)操作时,发现新增数据的id过长,结果导致前端JS拿到的数据出现了精度丢失问题,原因是后端id的类型是Long。在网上查了一下,只要在该属性上加上如下注解就可以 TableId(value &q…...
图示矩阵分解
特征值与特征向量 设 A A A 是 n 阶矩阵,如果存在数 λ \lambda λ 和 n 维非零列向量 x x x,满足关系式: A x λ x ( 1 ) Ax \lambda x\quad\quad(1) Axλx(1) 则数 λ \lambda λ 称为矩阵 A A A 的特征值,非零向量 x…...
六、互联网技术——数据存储
文章目录 一、存储系统层次结构二、按照重要性分类三、磁盘阵列RAID三、RAID基础四、磁盘阵列分级五、数据备份与恢复六、容灾与灾难恢复 一、存储系统层次结构 常见的三层存储体系结构如下图所示,分为高速缓冲存储器、主存储器和外存储器。 二、按照重要性分类 …...
六、vpp 流表+负载均衡
草稿!!! vpp node其实就是三个部分 1、plugin init 2、set command 3、function 实现功能,比如这里的流表 今天我们再用VPP实现一个流表的功能 一、流表 1.1流表----plugin init VLIB_REGISTER_NODE 注册流表节点 // 注册流…...
word已排序好的参考文献,插入新的参考文献,序号更新
原排序好的文献序号。 现在在3号后面插入一个新文献。4,5号应该成为5,6 这时在3号后面,回车,就会自动的增长。如下图: 但是如果手滑,把[4]删除了如何排序?? 如下图: …...
二叉树的顺序存储——堆——初识堆排序
前面我们学过可以把完全二叉树存入到顺序表中,然后利用完全二叉树的情缘关系,就可以通过数组下标来联系。 但是并不是把二叉树存入到数组中就是堆了,要看原原来的二叉树是否满足:所有的父都小于等于子,或者所有的父都…...
CYEZ 模拟赛 9
A a ⊥ b ⇒ a − b ⊥ a b (1) a \perp b \Rightarrow a-b \perp ab \tag {1} a⊥b⇒a−b⊥ab(1) 证明: gcd ( a , b ) gcd ( b , a − b ) \gcd(a,b) \gcd(b, a-b) gcd(a,b)gcd(b,a−b),故 a − b ⊥ b a - b \perp b a−b⊥b,同…...
typescript: Builder Pattern
/*** file: CarBuilderts.ts* TypeScript 实体类 Model* Builder Pattern* 生成器是一种创建型设计模式, 使你能够分步骤创建复杂对象。* https://stackoverflow.com/questions/12827266/get-and-set-in-typescript* https://github.com/Microsoft/TypeScript/wiki/…...
WPS/word 表格跨行如何续表、和表的名称
1:具体操作: 将光标定位在跨页部分的第一行任意位置,按下快捷键ctrlshiftenter,就可以在跨页的表格上方插入空行(在空行可以写,表1-3 xxxx(续)) 在空行中输入…...
Python的NumPy库(一)基础用法
NumPy库并不是Python的标准库,但其在机器学习、大数据等很多领域有非常广泛的应用,NumPy本身就有比较多的内容,全部的学习可能涉及许多的内容,但我们在这里仅学习常见的使用,这些内容对于我们日常使用NumPy是足够的。 …...
uniapp app 导出excel 表格
直接复制运行 <template><view><button click"tableToExcel">导出一个表来看</button><view>{{ successTip }}</view></view> </template><script>export default {data() {return {successTip: }},metho…...
【RabbitMQ】常用消息模型详解
文章目录 AMQP协议的回顾RabbitMQ支持的消息模型第一种模型(直连)开发生产者开发消费者生产者、消费者开发优化API参数细节 第二种模型(work quene)开发生产者开发消费者消息自动确认机制 第三种模型(fanout)开发生产者开发消费者 第四种模型(Routing)开发生产者开发消费者 第五…...
图像拼接后丢失数据,转tiff报错rasterfile failed: an unknown
图像拼接后丢失数据 不仅是数据丢失了,还有个未知原因报错 部分数据存在值不存在的情况 原因 处理遥感数据很容易,磁盘爆满了 解决方案 清理一些无用数据,准备买个2T的外接硬盘用着了。 然后重新做处理...
Nginx之日志模块解读
目录 基本介绍 配置指令 access_log(访问日志) error_log( 错误日志) 基本介绍 Nginx日志主要分为两种:access_log(访问日志)和error_log(错误日志)。Nginx日志主要记录以下信息: 记录Nginx服务启动…...
latex方程组编写,一种可以保证方程编号自适应的方法
问题描述: 在利用latex编写方程组时,可以有很多种方法,但不总是编辑好的公式能够显示出编号,故提出一种有效的方程组编写方法 方法: \begin{equation}X_{ t1}\left \{ \begin{matrix}\frac{x_{i}}{a} \quad\quad 0&l…...
深度学习基础 2D卷积(1)
什么是2D卷积 2D参数量怎么计算 以pytorch为例子,2D卷积在设置的时候具有以下参数,具有输入通道的多少(这个决定了卷积核的通道数量),滤波器数量,这个是有多少个滤波器,越多提取的特征就越有用…...
OpenCV DNN C++ 使用 YOLO 模型推理
OpenCV DNN C 使用 YOLO 模型推理 引言 YOLO(You Only Look Once)是一种流行的目标检测算法,因其速度快和准确度高而被广泛应用。OpenCV 的 DNN(Deep Neural Networks)模块为我们提供了一个简单易用的 API࿰…...
第八章 Linux文件系统权限
目录 8.1 文件的一般权限 1.修改文件或目录的权限---chmod命令 2.对于文件和目录,r,w,x有不同的作用: 3.修改文件或目录的所属主和组---chown,chgrp 8.2 文件和目录的特殊权限 三种通过字符描述文件权限 8.3 ACL 权限 1.A…...
XXL-JOB源码梳理——一文理清XXL-JOB实现方案
分布式定时任务调度系统 流程分析 一个分布式定时任务,需要具备有以下几点功能: 核心功能:定时调度、任务管理、可观测日志高可用:集群、分片、失败处理高性能:分布式锁扩展功能:可视化运维、多语言、任…...
java做个qq机器人
前置的条件 机器人是基于mirai框架实现的。根据官方的文档,建议使用openjdk11。 我这里使用的编辑工具是idea2023 在idea中新建一个maven项目,虽然可以使用gradle进行构建,不过我这里由于网络问题没有跑通。 pom.xml <dependency>&l…...
清华大学学位论文LaTeX模板:thuthesis完整使用指南
清华大学学位论文LaTeX模板:thuthesis完整使用指南 【免费下载链接】thuthesis LaTeX Thesis Template for Tsinghua University 项目地址: https://gitcode.com/gh_mirrors/th/thuthesis 清华大学thuthesis LaTeX模板是专为清华学子设计的学位论文写作工具&…...
FLUX小红书V2模型版本对比:V1与V2的核心改进与效果差异
FLUX小红书V2模型版本对比:V1与V2的核心改进与效果差异 1. 引言 如果你最近在玩AI图像生成,特别是想做出那种看起来特别真实、特别有小红书风格的照片,那你肯定听说过FLUX小红书模型。这个模型从V1版本开始就挺火的,主要是因为它…...
像素幻梦维度参数面板详解:精准调控每一粒像素的生成逻辑
像素幻梦维度参数面板详解:精准调控每一粒像素的生成逻辑 1. 像素幻梦创意工坊简介 Pixel Dream Workshop(像素幻梦创意工坊)是一款基于FLUX.1-dev扩散模型的像素艺术生成工具。它采用独特的16-bit现代明亮风格界面设计,为创作者…...
赶考状元AI学伴的优势是什么:不止于解题,更在于育人
在当今教育数字化战略行动深入推进的背景下,AI与教育的融合已成为发展新质生产力的重要实践。从国家层面看,教育数字化转型正引领着建设教育强国的方向,而AI教育应用也从课程试点逐步走向普及。在这一宏大趋势中,赶考状元AI学伴脱…...
Qwen3-0.6B-FP8高性能推理:FP8量化不损质量,数学/代码生成保持SOTA
Qwen3-0.6B-FP8高性能推理:FP8量化不损质量,数学/代码生成保持SOTA 最近在部署大模型时,你是不是也经常遇到这样的困扰:模型效果确实不错,但推理速度慢、显存占用高,稍微复杂点的任务就得等半天。特别是像…...
Wan2.2-I2V-A14B企业级落地:API服务压测报告(QPS 3.2,延迟<1.8s)
Wan2.2-I2V-A14B企业级落地:API服务压测报告(QPS 3.2,延迟<1.8s) 1. 测试环境与配置 1.1 硬件配置 GPU:RTX 4090D 24GB显存(专用优化版)CPU:10核心处理器内存:120G…...
STM32模拟UART实现技术详解
基于STM32的UART模拟实现技术解析1. UART通信基础原理1.1 异步串行通信基础通用异步收发器(UART)作为一种经典的串行通信方式,通过逐位传输实现数据通信。其核心优势在于传输线少、成本低,但相对并行通信速度较慢。异步通信模式下,收发双方的…...
ESP32电池电量检测实战:MicroPython ADC配置避坑指南(附完整代码)
ESP32电池电量检测实战:MicroPython ADC配置避坑指南(附完整代码) 当你在凌晨三点调试一个即将交付的物联网设备时,突然发现电量显示在30%到70%之间随机跳动——这种场景对嵌入式开发者来说再熟悉不过了。本文将带你深入ESP32的AD…...
VSCode便携版:如何实现真正的跨设备开发自由?
VSCode便携版:如何实现真正的跨设备开发自由? 【免费下载链接】VSCode-Portable VSCode 便携版 VSCode Portable 项目地址: https://gitcode.com/gh_mirrors/vsc/VSCode-Portable 还在为不同电脑上开发环境不一致而烦恼吗?VSCode便携版…...
动态感受野选择:LSKNet在遥感目标检测中的创新应用
1. 遥感目标检测的挑战与机遇 遥感图像中的目标检测一直是计算机视觉领域的重要研究方向。与常规的自然图像不同,遥感图像通常从高空俯拍,具有覆盖范围广、分辨率高、目标尺寸差异大等特点。这就带来了几个独特的挑战:首先是微小目标检测问题…...
