一、什么是UUID
通用唯一标识符 (UUID) 是一种特定形式的标识符,在大多数实际用途中可以安全地认为是唯一的。两个正确生成的 UUID 相同的可能性几乎可以忽略不计,即使它们是由不同的各方在两个不同的环境中创建的。这就是为什么说 UUID 是普遍唯一的。
UUID 只是一个值,您可以放心地将其视为唯一值。碰撞的风险是如此之低,以至于您可以合理地选择完全忽略它
UUID是一个128位(16字节)长度的标识符,旨在唯一地标识信息和资源。它由32个十六进制数字组成,通常以5个部分分隔开来,形如“8-4-4-4-12”的字符串。UUID的独特性来自于其生成算法,基于时间戳、生成者的唯一标识符和硬件信息等多个因素。这使得UUID在极小概率下出现重复的可能性。
二、UUID有什么用
UUID在各种软件系统中都被广泛应用。在分布式系统中,每个节点可以使用UUID来唯一标识自己,从而避免了中心化的标识分配管理。在数据库系统中,UUID常用作主键,保证在分布式环境中记录的唯一性。此外,UUID还常用于构建唯一的会话标识、生成唯一的文件名、标记资源等场景。
总结:
1.分布式系统中唯一标识自己
2.数据库中生成作为主键,唯一性
3.生成文件名、标记资源、唯一会话标识
三、UUID如何使用
1.生成UUID(纯UUID)
package Huas;
import java.util.UUID;
public class UuidDemo {
public static void main(String[] args) {
String uuid = UUID.randomUUID().toString();
System.out.println("uuid = "+uuid);
}
}
输出的结果带杠-
2.自定义UUID
package Huas;
import java.util.UUID;
public class UuidDemo {
public static void main(String[] args) {
//1.生成一个以lyqy -开头的ID,并且把里面的 - 去掉
String lyqy = "lyqy-" + UUID.randomUUID().toString().replaceAll("-","");
System.out.println("lyqy = "+lyqy);
//2.生成一个以 dx- 开头的ID
String uuid = String.valueOf(UUID.randomUUID());
String dx = "dx-";
dx += uuid;
System.out.println("dx = "+dx);;
}
}
输出结果
原文链接:https://blog.csdn.net/weixin_53607413/article/details/135427261