在 Java 中创建 GUID
什么是 GUID
GUID 是 Globally Unique Identifier
的缩写。通常也将其称为通用唯一标识符
或 UUID
。这两个词之间没有真正的区别。从技术上讲,它们是 128 位不变的,唯一的,加密强度高的随机数。这些随机数最终被用于计算目的。生成此类数字的算法非常复杂,以至于每秒可能生成 1,0000,000,000 个随机数。这些数字不太可能重复。
我们在软件开发实践和方法中使用 GUID 或 UUID,在这种情况下,我们希望使用唯一的 ID 作为主键(例如数据库键,组件标识符和各种事务)进行大型事务。
使用 randomUUID()
方法生成 UUID 的示例代码
package guid;
import java.util.UUID;
public class CreateGuid {
public static void main(String[] args) {
UUID uuid = UUID.randomUUID();
System.out.println("UUID = " + uuid.toString());
}
}
在 Java 语言中,UUID
类在 1.5 版以后可用。该类位于 java.util.UUID
包中。randomUUID()
方法是一种静态工厂方法,用于检索类型 4(伪随机生成的)UUID。由于该方法是 UUID 类的静态工厂方法,因此需要类名才能调用该方法。
上述程序的输出似乎是唯一生成的 UUID。
UUID = 70aba303-60d8-4cb5-b3e7-4170c4be5642
使用 UUID 构造函数
和 fromString()
方法生成 UUID 的示例代码:
在下面的程序中,UUID
类构造函数用于生成 UUID。构造函数有两个参数:mostSignificantBits
和 leastSignificantBits
。
mostSignificantBits
用于 UUID 的最高有效 64 位,而 leastSignificantBits
用于最低 UUID 64 位。
fromString()
方法是一种静态工厂方法,可从字符串标准表示形式创建 UUID。上面的方法以字符串
为参数。因此,在 uuid
对象上,内联函数中调用了 toString()
方法。
如果名称不符合 toString
方法中描述的字符串表示形式,则 fromString
方法将引发 IllegalArgumentException
。
package guid;
import java.util.UUID;
public class GenerateGuidUsingConstructor {
public static void main(String[] args) {
UUID uuid = new UUID(24, 02);
System.out.println(UUID.fromString(uuid.toString()));
}
}
以下是从构造函数生成的 UUID 的输出。
00000000-0000-0018-0000-000000000002
Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.
LinkedIn