CodeGym /Blog Java /Random-ES /Guía de UUID en Java
John Squirrels
Nivel 41
San Francisco

Guía de UUID en Java

Publicado en el grupo Random-ES
UUID significa Identificador único universal, que es un valor de 128 bits de longitud que se utiliza para identificar información en sistemas informáticos. Un UUID generado por el generador de UUID está diseñado para ser único en todos los sistemas y en todo momento. La longitud de un UUID es de 36 caracteres, incluidos guiones, y normalmente se representa en notación hexadecimal.

¿Qué es UUID en Java?

La clase UUID en Java es parte del paquete java.util y proporciona métodos para generar y manipular UUID. Es una clase comúnmente utilizada en Java para generar identificadores únicos. Con la ayuda de la clase UUID en Java, podemos generar fácilmente UUID aleatorios, así como crear UUID a partir de diferentes fuentes, como matrices de bytes, cadenas y valores largos. Podemos obtener una variedad de UUID generados diferentes cada vez que se llama al generador. Estos UUID generados son únicos y están diseñados para ser únicos globalmente, lo que significa que diferentes sistemas no generarán el mismo UUID dos veces. Podemos utilizar los UUID generados para diversos fines, como ID de sesión, claves de bases de datos y otros escenarios donde la unicidad es importante.

Generando UUID en Java

Para generar UUID en Java, usamos la clase java.util.UUID . La clase java.util.UUID proporciona dos métodos para generar UUID: randomUUID() y nameUUIDFromBytes(byte[] name) . El método randomUUID() genera un UUID aleatorio. Este método no requiere ningún argumento y genera un UUID aleatorio cada vez que se llama. A continuación se muestra un ejemplo de cómo utilizar el método 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);
    }
}

Producción

UUID generado: d3ee2929-212b-4077-af84-694a0e69b8e1
El método nameUUIDFromBytes(byte[] nombre) genera un UUID a partir de una matriz de bytes. Este método toma una matriz de bytes como argumento y genera un UUID basado en el contenido de la matriz de bytes. A continuación se muestra un ejemplo de cómo utilizar el método nameUUIDFromBytes(byte[] nombre) :
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);
    }
}

Producción

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

Propiedades UUID

Los UUID tienen las siguientes propiedades:
  • Longitud: los UUID tienen una longitud de 128 bits, lo que significa que contienen 16 bytes de datos. Esta longitud los hace adecuados para su uso en sistemas informáticos, ya que pueden almacenarse de manera eficiente.
  • Unicidad: la probabilidad de que dos UUID sean iguales es muy baja. La probabilidad de una colisión es de aproximadamente 1 entre 2^128, que es un número extremadamente pequeño.
  • Aleatoriedad: el UUID se genera mediante un algoritmo que garantiza la aleatoriedad. Esta aleatoriedad hace que sea difícil para cualquiera predecir los UUID que se generarán.
  • Versión: los UUID se dividen en versiones y cada versión utiliza un algoritmo diferente para generar el UUID. Las versiones más utilizadas son la versión 1 y la versión 4. Los UUID de la versión 1 se generan utilizando la hora actual y la dirección MAC de la computadora que genera el UUID. Los UUID de la versión 4 se generan utilizando números aleatorios.

Longitud de un UUID

Un UUID es un valor de 128 bits, representado por una cadena de 36 caracteres. La cadena contiene 32 dígitos hexadecimales, divididos en grupos de 8, 4, 4, 4 y 12 dígitos, separados por guiones. A continuación se muestra un ejemplo de una cadena UUID:
123e4567-e89b-12d3-a456-426655440000
UUID de ejemplo: Aquí hay un UUID de ejemplo, generado usando el método randomUUID() :
d3ee2929-212b-4077-af84-694a0e69b8e1
Este UUID consta de 32 dígitos hexadecimales, divididos en grupos de 8, 4, 4, 4 y 12 dígitos, separados por guiones. En el ejemplo UUID anterior, cuando hablamos de la clase UUID en Java, el término generar el UUID se refiere al proceso de creación de un nuevo UUID utilizando la clase java.util.UUID . Este proceso implica llamar a uno de los métodos de fábrica estáticos de la clase UUID, como randomUUID() o nameUUIDFromBytes(byte[]) . Una vez que llamemos a uno de estos métodos, la clase UUID en Java creará un nuevo UUID y nos lo devolverá. Estos UUID generados se pueden utilizar en nuestra aplicación según sea necesario.

Conclusión

En este artículo, analizamos qué son los UUID y cómo generarlos utilizando la clase java.util.UUID en Java. También analizamos las propiedades de los UUID, incluida su longitud, unicidad, aleatoriedad y versión. Los UUID se utilizan ampliamente en sistemas informáticos para identificar información de una manera única. Son útiles en sistemas distribuidos y bases de datos donde varias computadoras o nodos necesitan acceder y manipular datos. Con la clase java.util.UUID en Java, puede generar UUID fácilmente en sus proyectos Java.
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION