通用唯一标识码UUID的介绍及使用
轉(zhuǎn)載自?通用唯一標(biāo)識碼UUID的介紹及使用。
什么是UUID?
UUID全稱:Universally Unique Identifier,即通用唯一識別碼。
UUID是由一組32位數(shù)的16進(jìn)制數(shù)字所構(gòu)成,是故UUID理論上的總數(shù)為16^32 = 2^128,約等于3.4 x 10^38。也就是說若每納秒產(chǎn)生1兆個UUID,要花100億年才會將所有UUID用完。
UUID的標(biāo)準(zhǔn)型式包含32個16進(jìn)制數(shù)字,以連字號分為五段,形式為8-4-4-4-12的32個字符,如:550e8400-e29b-41d4-a716-446655440000。
UUID的作用
UUID的是讓分布式系統(tǒng)中的所有元素都能有唯一的辨識信息,而不需要通過中央控制端來做辨識信息的指定。如此一來,每個人都可以創(chuàng)建不與其它人沖突的UUID。在這樣的情況下,就不需考慮數(shù)據(jù)庫創(chuàng)建時的名稱重復(fù)問題。目前最廣泛應(yīng)用的UUID,是微軟公司的全局唯一標(biāo)識符(GUID),而其他重要的應(yīng)用,則有Linux ext2/ext3文件系統(tǒng)、LUKS加密分區(qū)、GNOME、KDE、Mac OS X等等。
UUID的組成
UUID是指在一臺機(jī)器上生成的數(shù)字,它保證對在同一時空中的所有機(jī)器都是唯一的。通常平臺會提供生成的API。按照開放軟件基金會(OSF)制定的標(biāo)準(zhǔn)計(jì)算,用到了以太網(wǎng)卡地址、納秒級時間、芯片ID碼和許多可能的數(shù)字。
UUID由以下幾部分的組合:
當(dāng)前日期和時間,UUID的第一個部分與時間有關(guān),如果你在生成一個UUID之后,過幾秒又生成一個UUID,則第一個部分不同,其余相同。
時鐘序列。
全局唯一的IEEE機(jī)器識別號,如果有網(wǎng)卡,從網(wǎng)卡MAC地址獲得,沒有網(wǎng)卡以其他方式獲得。
UUID的唯一缺陷在于生成的結(jié)果串會比較長。關(guān)于UUID這個標(biāo)準(zhǔn)使用最普遍的是微軟的GUID(Globals Unique Identifiers)。
UUID的生成
public static void main(String[] args) throws Exception {System.out.println(UUID.randomUUID()); }批量生成UUID網(wǎng)站:http://www.uuid.online/
總結(jié)
以上是生活随笔為你收集整理的通用唯一标识码UUID的介绍及使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JSON Web Token (JWT)
- 下一篇: JDK9新特性实战:简化流关闭新姿势