JDK 1.5から追加された java.util.UUID を使うと、RFC4122で定義されたバージョン3(名前のMD5ベース)とバージョン4(乱数ベース)のUUIDを生成出来ます。また、生成はできませんが、他のシステムが生成したバージョン1(タイムスタンプベース)のUUIDを読み込んで、タイムスタンプやclock sequenceなど取り出すことも出来るようです。
バージョン3(名前のMD5ベース)の生成:
UUID u2 = UUID.nameUUIDFromBytes("abcdefg".getBytes());
バージョン4(乱数ベース)の生成:
UUID u1 = UUID.randomUUID();
toString()すると、以下の様な文字列が取得出来ます。
78290547-ddd6-4cf2-8fe4-7dd241da3061
サンプル(JDK 1.7で確認):
参考資料:
コメント