什么时候需要一个 UUID 生成器
给测试数据造假的主键、给新表定主键类型、给事件流编一个不冲突的 ID、在分布式服务之间传一个不依赖中心发号的标识——这些场景的共同点是:你需要一串「几乎不可能重复」的标识符,而且现在就要。
UUID(通用唯一标识符)就是这件事的标准答案。128 位、有成熟的格式规范(RFC 4122 与 2024 年的 RFC 9562),几乎所有语言的标准库都能生成。在线生成器的价值在于:不用写代码就能拿到一批,还能按目标系统的习惯切换格式。
v4 还是 v7:一句话选法
- v4:122 位加密安全随机。你在大资料、老系统、别人的框架里看到的 UUID 十有八九是 v4。不确定就用它。
- v7:前 48 位是毫秒级 Unix 时间戳,其余随机。它按时间有序——做 MySQL/PostgreSQL 主键时索引顺序插入而不是随机打散,做事件 ID 时天然可排序。新项目值得优先考虑。
一个冷知识:v7 的前 48 位就是毫秒级时间戳,把一个 v7 的前 12 个十六进制字符按整数读出来,就是它生成的时刻,可以直接用 Unix 时间戳转换器核对。
iLoveDevTool 的在线 UUID 生成器
我们的在线 UUID 生成器把常用需求做直接:
- v4、v7、nil 三种版本:v7 在同一毫秒内严格递增,批量结果可直接作有序测试数据;
- 一次最多 1000 个:整批复制为换行纯文本或 JSON 数组,粘进测试代码即用;
- 格式随切:大写、去连字符、花括号(GUID 写法)三个开关,满足 Windows、Java、PostgreSQL 各自的书写习惯;
- 全部本地生成:随机数来自浏览器的加密安全接口,不联网、不上传。
和 uuidgenerator.org 比怎么样
uuidgenerator.org 是这个品类最老牌的站点,值得尊重,也值得诚实对比:
| 维度 | uuidgenerator.org | iLoveDevTool |
|---|---|---|
| 版本 | 单一格式(未标注版本) | v4 / v7 / nil 明确可选 |
| 批量 | 逐个生成 | 1 到 1000 个一次生成 |
| 格式选项 | 固定小写连字符 | 大写 / 连字符 / 花括号可切 |
| 界面语言 | 英文 | 中文优先,覆盖 20 种语言 |
| 历史沉淀 | 十几年心智份额,搜索结果常青 | 新工具,胜在轻与快 |
老站的优势是「搜一下就能找到」的心智份额;功能维度上,我们的生成器在版本、批量与格式三项都更全。
常见问题
uuidgenerator.org 是免费的吗?
是。uuidgenerator.org 的生成器免费可用,无需注册。它的界面是英文的,批量与格式选项较基础;iLoveDevTool 的 UUID 生成器同样免费,并提供 v7、1000 个批量、大小写/连字符/花括号格式切换与中文界面。
UUID v4 和 v7 应该用哪个?
不确定就用 v4:它是绝大多数数据库与框架的默认值,兼容性最好。v7 带 48 位毫秒时间戳前缀、按时间有序,做主键时索引不会被打散,日志与事件流排序更直观,适合新建表与事件 ID。存量 v4 系统不需要迁移。
GUID 和 UUID 是同一个东西吗?
是。GUID 是微软对 UUID 的叫法,RFC 4122 之后两者等价。Windows 生态常见的带花括号大写写法,只是格式差异,用生成器的大写与花括号选项就能得到。