本文目錄一覽:
什麼是UUID,Java中怎麼產生UUID
UUID: 通用唯一識別碼 (Universally Unique Identifier),是根據時間,機器碼,網絡地址生成的全球唯一數。
引入 java.util.UUID,直接調用以下即可得到一個32為的隨機數,即UUID.
UUID uuid = UUID.randomUUID();
什麼是UUID,Java中怎麼產生UUID?
UUID 是 通用唯一識別碼(Universally Unique Identifier)的縮寫,是一種軟件建構的標準,亦為開放軟件基金會組織在分佈式計算環境領域的一部分。其目的,是讓分佈式系統中的所有元素,都能有唯一的辨識信息,而不需要通過中央控制端來做辨識信息的指定。
生成UUID的方法:
public static String getUUID32(){ String uuid = UUID.randomUUID().toString().replace(“-“, “”).toLowerCase(); return uuid;// return UUID.randomUUID().toString().replace(“-“, “”).toLowerCase();}
註:因為一般數據庫主鍵為String類型,所以接收類型為String,生成的uuid數據包含-,所以要去掉-,故UUID.randomUUID().toString().replace(“-“, “”).toLowerCase()。
擴展資料:
UUID由以下幾部分的組合:
(1)當前日期和時間,UUID的第一個部分與時間有關,如果你在生成一個UUID之後,過幾秒又生成一個UUID,則第一個部分不同,其餘相同。
(2)時鐘序列。
(3)全局唯一的IEEE機器識別號,如果有網卡,從網卡MAC地址獲得,沒有網卡以其他方式獲得。
UUID的唯一缺陷在於生成的結果串會比較長。關於UUID這個標準使用最普遍的是微軟的GUID(Globals Unique Identifiers)。在ColdFusion中可以用CreateUUID()函數很簡單地生成UUID,其格式為:xxxxxxxx-xxxx- xxxx-xxxxxxxxxxxxxxxx(8-4-4-16)。
其中每個 x 是 0-9 或 a-f 範圍內的一個十六進制的數字。而標準的UUID格式為:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (8-4-4-4-12),可以從cflib 下載CreateGUID() UDF進行轉換。
參考資料:百度百科-UUID
Java UUID是否區分大小寫
首先說一下原理,我所知道由Java生成的UUID是通過java.Util.UUID的靜態方法randomUUID()來生成的。而UUID一般用於數據庫的主鍵填充。
然後回答你的問題,如果你直接使用UUID類的這個方法生成UUID的話,默認是小寫英文字符和數字的組合(更準確地說是16進制數)。如果你想區分大小寫,那麼有兩種方法:
1、在生成UUID後做大寫處理,再存入數據庫。當然,你在查詢數據庫的數據時,涉及到主鍵時也要注意相應條件的改變;
2、先存入數據庫,然後在查詢條件中進行處理。一般的關係數據庫都會有字符大小寫相關的函數。
結論:默認生成的UUID是小寫的,可以通過其他方式將其改成大寫。因為數據庫對大小寫是區分的,所以相當於對UUID也是區分大小寫的。
Java存儲函數中使用UUID
UUID是1.5中新增的一個類,在java.util下,用它可以產生一個號稱全球唯一的ID。 import java.util.UUID; public class Test { public static void main(String[] args) { UUID uuid = UUID.randomUUID(); System.out.println (uuid); } }
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/292803.html