1.什麼是UUID?java
UUID是通用惟一標識符(Universally Unique Identifier)。由128bit組成,若是用16進製表示,那麼就是32個字符。表示形式以下:03e1c09e-4967-469c-85f5-764c5b286d47(8-4-4-4-12)。dom
2.UUID的做用?分佈式
讓分佈式系統中的全部元素都能有惟一的辨識資訊,而不須要經過中央控制端來做辨別資訊的指定。spa
3.UUID由哪些元素組成才能讓其成爲惟一?字符串
UUID指在一臺機器上生成的數字,他保證對在同一時空內的全部機器都是惟一的。說得明白一點就是它能保證不管在某時某地某臺機器上它都能生成一個惟一字符串。get
組成部分:it
1)當前日期及時間io
2)時鐘序列基礎
3)全局惟一的IEEE機器識別號。rsa
4.怎麼在java裏建立UUID?
在java裏建立一個UUID很是簡單,直接用java.util.UUID這個類提供的靜態方法(一共有3個)便可建立出UUID.
方法1:UUID.randomUUID(); 使用隨機生成方式產生一個隨機的UUID,調用version(),返回4;
方法2:UUID.fromString("03e1c09e-4967-469c-85f5-764c5b286d47");使用隨機生成方式產生一個指定的UUID,調用version(),返回4;
方法3:UUID.nameUUIDFromBytes("03e1c09e-4967-469c-85f5-764c5b286d47".getBytes()); 使用根據名稱方法產生一個UUID,調用version(),返回3;
補充一點:生成UUID有4種生成方式:
version value:1表示根據時間生成
version value:2表示DCE security UUID
version value:3表示根據名稱生成
version value:4表示隨機生成
這4種生成方法用1,2,3,4去表示,能夠使用version()去獲取這個值。例如使用UUID.randomUUID()生成一個UUID,那麼調用version()方法就會獲得數字4,表示該UUID是用隨機方式生成的。