【隨機數】生成用戶的ID


import java.util.UUID;

在java中的UUID包下的

UUID的全稱為:Universally Unique IDentifier,也被稱為GUID(Globally Unique IDentifier)。是一種由算法生成的唯一標識,它實質上是一個128位長的二進制整數。通常表示成32個16進制數組成的字符串,如:21EC2020-3AEA-1069-A2DD-08002B30309D。

Java的UUID是V3 V4

3. 基於名稱空間的UUID(MD5)

基於名稱的UUID通過計算名稱和名稱空間的MD5散列值得到,這個版本的UUID保證了:相同名稱空間中不同名稱生成的UUID的唯一性;不同名稱空間中的UUID的唯一性;相同名稱空間中相同名稱的UUID重復生成是相同的。

4. 基於隨機數的UUID

根據隨機數,或者偽隨機數生成UUID。這種UUID產生重復的概率是可以計算出來的,但隨機的東西就像是買彩票:你指望它發財是不可能的,但狗屎運通常會在不經意中到來。可能在測試的時候多線程並發也不見得出現重復,但是卻不能保證系統正式上線之后不會出現不重復的UUID,特別是在分布式系統中。

public static String getID()
    {
        return UUID.randomUUID().toString().replaceAll("-","");
    }

這里取得一個隨機數

因為UUID的格式是 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

所以我們把-去掉 變成空  這樣出來的ID就不會有符號了

我們用junit來測試一下

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM