How to Generate a UUID in Java

    Use java.util.UUID.randomUUID() for random UUIDs and nameUUIDFromBytes() for name-based ones.

    Need a UUID right now? Generate one instantly in your browser.

    Java's standard library includes java.util.UUID, so you can generate UUIDs without any dependencies. UUID.randomUUID() returns a random version 4 UUID and is the most common choice.

    The examples cover random generation, parsing, and the name-based factory method.

    Generate a random UUID (v4)

    Call the static UUID.randomUUID() method. Use toString() when you need the canonical 36-character form.

    java
    import java.util.UUID;
    
    public class Demo {
        public static void main(String[] args) {
            UUID id = UUID.randomUUID();
            System.out.println(id);            // 36b8f84d-df4e-4d49-b662-bcde71a8764f
            System.out.println(id.toString()); // same value as a String
        }
    }

    Parse and create from a string or bytes

    UUID.fromString() parses a canonical UUID and throws IllegalArgumentException on invalid input. UUID.nameUUIDFromBytes() produces a deterministic version 3 (MD5) UUID from a byte array.

    java
    // Parse an existing UUID string
    UUID parsed = UUID.fromString("36b8f84d-df4e-4d49-b662-bcde71a8764f");
    
    // Deterministic name-based UUID (version 3)
    UUID named = UUID.nameUUIDFromBytes("example.com".getBytes());
    
    System.out.println(parsed.version()); // 4
    System.out.println(named.version());  // 3

    Frequently asked questions

    Do I need a library to generate a UUID in Java?
    No. java.util.UUID is part of the JDK, so UUID.randomUUID() works out of the box.
    How do I generate a deterministic UUID in Java?
    Use UUID.nameUUIDFromBytes(bytes), which returns a version 3 (MD5-based) UUID that is the same for the same input.
    Does Java support UUID v7?
    The JDK only generates v3 and v4 directly. For time-ordered v7 UUIDs, use a library such as java-uuid-generator (JUG).

    Cookie Consent

    We use cookies to enhance your experience on our website. By accepting, you agree to the use of cookies in accordance with our Privacy Policy.