JavaにおけるUUIDの実装

1694 ワード

詳細
UUID(Universally Unique Identifier)グローバル一意識別子は、同じ時間に空にいるすべてのマシンに対して一意であることを保証する1台のマシンで生成された数字を指す.オープンソフトウェア財団(OSF)が制定した標準計算に従って、イーサネットカードアドレス、ナノ秒級時間、チップIDコード、および多くの可能な数字が使用された.現在の日付と時刻(UUIDの最初の部分は時間に関係し、UUIDを生成した後、数秒後にUUIDを生成すると、最初の部分は異なり、残りは同じ)、クロックシーケンスは、グローバル唯一のIEEEマシン識別番号(NICがあればNICから取得し、NICが他の方法で取得されない)は、UUIDの唯一の欠点は、生成された結果列が比較的長いことである.
JavaでUUIDを生成するには、主に次の方法があります.
JDK1.5
使用するJDK 1の場合5の場合、UUIDを生成するのは簡単なことになり、JDKがUUIDを実現したと思っています.
java.util.UUIDは、直接呼び出せばよい.
UUID uuid  =  UUID.randomUUID(); 
String s = UUID.randomUUID().toString();//          id     
 
UUIDは16ビットの数字からなり、例えば
550E8400-E29B-11D4-A716-446655440000  
//次は、データベースに一意のプライマリ・キーidを取得するためのコードです.
public class UUIDGenerator { 
    public UUIDGenerator() { 
    } 
    /** 
     *     UUID 
     * @return String UUID 
     */ 
    public static String getUUID(){ 
        String s = UUID.randomUUID().toString(); 
        //  “-”   
        return s.substring(0,8)+s.substring(9,13)+s.substring(14,18)+s.substring(19,23)+s.substring(24); 
    } 
    /** 
     *        UUID 
     * @param number int      UUID   
     * @return String[] UUID   
     */ 
    public static String[] getUUID(int number){ 
        if(number < 1){ 
            return null; 
        } 
        String[] ss = new String[number]; 
        for(int i=0;i