_02_使用UUID获取唯一标识
[文章標題:_02_使用UUID獲取唯一標識] [202012-29 03:39:00]
需求:
? 很多時候我們會需要用到 生成不重復的唯一標識的 的功能,如數據庫表中的主鍵等。
實現:
? 使用UUID生成 唯一、不重復 的字符串。
import java.util.UUID; public class UUIDUtils {public static String getUUID(){return UUID.randomUUID().toString().replace("-","");} }什么是UUID:
? UUID 通用唯一識別碼(Universally Unique Identifier),UUID出現的目的,是為了讓分布式系統可以不借助中心節點,就可以生成UUID來標識一些唯一的信息。UUID是 國際標準化組織 ISO 提出的一個概念。UUID是一個128比特的數值,這個數值可以通過一定的算法計算出來。目前最廣泛應用的UUID,是微軟公司微軟公司的全局唯一標識符(GUID)。
UUID在發展過程中,為了適應不同的需要,產生了5個版本:
- uuid1: 基于時間戳、機器MAC地址生成。由于使用MAC地址,可以保證全球范圍的唯一性。
- uuid2: 只基于時間戳,不常用。
- uuid3: 基于namespace和一個自定義字符串,不常用。
- uuid4: 只基于隨機數,最常用,但不推薦,重復幾率不太能讓人接受。
- uuid5: 只基于namespace,不常用。
UUID組成:
UUID按照開放軟件基金會(OSF)制定的標準計算,用到了以太網卡地址、納秒級時間、芯片ID碼和許多可能的數字。
UUID由以下幾部分的組合:
(1)當前日期和時間,UUID的第一個部分與時間有關,如果你在生成一個UUID之后,過幾秒又生成一個UUID,則第一個部分不同,其余相同。
(2)時鐘序列。
(3)全局唯一的IEEE機器識別號,如果有網卡,從網卡MAC地址獲得,沒有網卡以其他方式獲得。
標準的UUID格式為:xxxxxxxx-xxxx-Axxx-Bxxx-xxxxxxxxxxxx (8-4-4-4-12)。
A那個位置,代表版本號,由于UUID的標準實現有5個版本,所以只會是1,2,3,4,5
B那個位置,只會是8,9,a,b
總結
以上是生活随笔為你收集整理的_02_使用UUID获取唯一标识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: css 所有选择器 实例与总结
- 下一篇: 若依部署文档