Java

Java UUIDを生成しString→UUID UUID→Stringをする方法

JavaでUUIDを使用する際の手順をまとめました。

UUIDは「Universally Unique IDentifier」の略です。直訳で世界で唯一のIDで、世界中で重複しないIDです。GUID「Globally Unique Identifier」と呼ばれることもありますが、現代ではほぼ同じ概念と考えて問題ありません。

UUIDにはいくつかの生成方法がありますが、今回は一般的に使用されることが多い、version4を使用する方法をまとめていきます。

JavaでUUIDを生成する

JavaでUUIDを生成する方法は非常に簡単です。

JavaのutilパッケージにUUIDというクラスが用意されているので、それを使用することで、生成や操作をすることができます。

以下はUUIDv4を生成するコードサンプルです。

import java.util.UUID;

public class Uuid {
    public static void main(String[] args) {
        // UUIDを生成
        UUID uuid = UUID.randomUUID();
        // UUIDをStringに変換する
        System.out.println(uuid.toString());
    }
}

実行結果は以下のとおりです。

40c79cf6-bf1d-4f87-8cb9-95fb5a8fc619

UUIDを生成し、Stringに変換することができました。

この値はUUIDなので、世界のどこかで誰かがrandomUUID()を使用したとしても、私が使用したとしても、同じ値が生成されることはありません。唯一のIDを生成することができます。

StringからUUIDクラスに変換する方法

UUIDの検査を行いたいシーンなどでは、UUIDクラスに備わっているメソッドを使用したいのので、Stringで取得したUUIDをUUIDクラスに変換したくなります。

以下のようにUUIDクラスのfromStringにString型のUUIDを渡すことで、UUIDクラスに変換することができます。

import java.util.UUID;

public class Uuid {
    public static void main(String[] args) {
        String uuidStr = "40c79cf6-bf1d-4f87-8cb9-95fb5a8fc619";
        UUID uuid = UUID.fromString(uuidStr);
        System.out.println(uuid.toString());
    }
}

実行結果は以下のとおりです。

40c79cf6-bf1d-4f87-8cb9-95fb5a8fc619

Stringから変換したUUIDをStringで表示すると、もとのuuidStrの値となったので、正しく変換できていることが確認できました。

まとめ

JavaでUUIDのv4を生成するには、utilパッケージのUUIDクラスを使用することで簡単に生成することができます。

もし、自分のシステムだけではなく、世界で唯一のIDを生成したいケース(他システムとの連携など)があれば、UUIDの使用を検討してみてください。

Javaでは非常に簡単にUUIDを扱えますよ。

【お知らせ 無料!】未経験エンジニアがJavaでWebサイトを作成できるようになるための学習ロードマップを、無料で公開しています!

実体験に基づいて作成されているので、プログラミングスクールなどで指導されるロードマップにも劣らない品質です。

こちらの「【Java】エンジニア未経験者がJavaを効率的に勉強する手順を紹介します」リンクから無料で閲覧できるので、是非ご覧ください!

【2021/7 更新】エンジニア未経験者がJavaを効率的に勉強する手順を紹介します【学習ロードマップ】プログラミングを勉強する際に候補に出てくる言語に Java があります。 最近は Java 以外の言語である、Ruby や Pyt...