CodeGym /Java Blog /Random-IT /Guida all'UUID in Java
John Squirrels
Livello 41
San Francisco

Guida all'UUID in Java

Pubblicato nel gruppo Random-IT
UUID sta per Universally Unique Identifier, che è un valore lungo 128 bit utilizzato per identificare le informazioni nei sistemi informatici. Un UUID generato dal generatore UUID è progettato per essere unico in tutti i sistemi e in ogni momento. La lunghezza di un UUID è di 36 caratteri, compresi i trattini, ed è generalmente rappresentata in notazione esadecimale.

Cos'è l'UUID in Java?

La classe UUID in Java fa parte del pacchetto java.util e fornisce metodi per generare e manipolare gli UUID. È una classe comunemente usata in Java per generare identificatori univoci. Con l'aiuto della classe UUID in Java, possiamo facilmente generare UUID casuali, nonché creare UUID da diverse fonti come array di byte, stringhe e valori lunghi. Possiamo ottenere una varietà di UUID generati diversi ogni volta che viene chiamato il generatore. Questi UUID generati sono unici e progettati per essere unici a livello globale, il che significa che lo stesso UUID non verrà generato due volte da sistemi diversi. Possiamo utilizzare gli UUID generati per una varietà di scopi come ID di sessione, chiavi di database e altri scenari in cui l'unicità è importante.

Generazione dell'UUID in Java

Per generare UUID in Java, utilizziamo la classe java.util.UUID . La classe java.util.UUID fornisce due metodi per generare UUID: randomUUID() e nameUUIDFromBytes(byte[] name) . Il metodo randomUUID() genera un UUID casuale. Questo metodo non richiede argomenti e genera un UUID casuale ogni volta che viene chiamato. Ecco un esempio di come utilizzare il metodo randomUUID() :
import java.util.UUID;

public class UUIDExample {
    public static void main(String[] args) {
        // generating a random UUID
        UUID uuid = UUID.randomUUID();

        // print the UUID
        System.out.println("Generated UUID: " + uuid);
    }
}

Produzione

UUID generato: d3ee2929-212b-4077-af84-694a0e69b8e1
Il metodo nameUUIDFromBytes(byte[] name) genera un UUID da un array di byte. Questo metodo accetta un array di byte come argomento e genera un UUID in base al contenuto dell'array di byte. Ecco un esempio di come utilizzare il metodo nameUUIDFromBytes(byte[] name) :
import java.util.UUID;

public class UUIDExample {
    public static void main(String[] args) {
        // generating a UUID from a byte array
        byte[] name = { 1, 2, 3, 4, 5 };
        UUID uuid = UUID.nameUUIDFromBytes(name);

        // print the UUID
        System.out.println("Generated UUID: " + uuid);
    }
}

Produzione

UUID generato: 4d6579d4-c3e7-38a1-9246-017e903b2c33

Proprietà dell'UUID

Gli UUID hanno le seguenti proprietà:
  • Lunghezza: gli UUID sono lunghi 128 bit, il che significa che contengono 16 byte di dati. Questa lunghezza li rende adatti all'uso nei sistemi informatici poiché possono essere archiviati in modo efficiente.
  • Unicità: la probabilità che due UUID siano uguali è molto bassa. La possibilità di una collisione è di circa 1 su 2^128, che è un numero estremamente piccolo.
  • Casualità: l'UUID viene generato utilizzando un algoritmo che garantisce la casualità. Questa casualità rende difficile per chiunque prevedere gli UUID che verranno generati.
  • Versione: gli UUID sono divisi in versioni, ciascuna versione utilizza un algoritmo diverso per generare l'UUID. Le versioni più comunemente utilizzate sono la versione 1 e la versione 4. Gli UUID della versione 1 vengono generati utilizzando l'ora corrente e l'indirizzo MAC del computer che sta generando l'UUID. Gli UUID della versione 4 vengono generati utilizzando numeri casuali.

Lunghezza di un UUID

Un UUID è un valore a 128 bit, rappresentato da una stringa di 36 caratteri. La stringa contiene 32 cifre esadecimali, divise in gruppi di 8, 4, 4, 4 e 12 cifre, separate da trattini. Ecco un esempio di una stringa UUID:
123e4567-e89b-12d3-a456-426655440000
UUID di esempio: ecco un UUID di esempio, generato utilizzando il metodo randomUUID() :
d3ee2929-212b-4077-af84-694a0e69b8e1
Questo UUID è composto da 32 cifre esadecimali, divise in gruppi di 8, 4, 4, 4 e 12 cifre, separate da trattini. Nell'esempio UUID sopra quando parliamo della classe UUID in Java, il termine generazione dell'UUID si riferisce al processo di creazione di un nuovo UUID utilizzando la classe java.util.UUID . Questo processo prevede la chiamata a uno dei metodi factory statici della classe UUID come randomUUID() o nameUUIDFromBytes(byte[]) . Una volta chiamato uno di questi metodi, la classe UUID in Java creerà un nuovo UUID e ce lo restituirà. Questi UUID generati possono quindi essere utilizzati nella nostra applicazione secondo necessità.

Conclusione

In questo articolo, abbiamo discusso cosa sono gli UUID e come generarli utilizzando la classe java.util.UUID in Java. Abbiamo anche esaminato le proprietà degli UUID, inclusa la loro lunghezza, unicità, casualità e versione. Gli UUID sono ampiamente utilizzati nei sistemi informatici per identificare le informazioni in modo univoco. Sono utili nei sistemi distribuiti e nei database in cui più computer o nodi devono accedere e manipolare i dati. Con la classe java.util.UUID in Java, puoi generare facilmente UUID nei tuoi progetti Java.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION