在 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