logo

Java Générer un UUID

UUID est un numéro d'identification unique de 128 bits largement utilisé dans le système informatique. Il se compose de chiffres hexadécimaux séparés par quatre tirets. Dans cette section, nous discuterons qu'est-ce que l'UUID et comment générer aléatoirement un UUID (version 4) en Java .

UUID

UUID représente Identifiant universellement unique . Les UUID sont standardisés par l'Open Software Foundation (OSF). Il fait partie de l'environnement informatique distributif (DCE). Un UUID est un numéro unique de 36 caractères (128 bits). Il est également connu sous le nom de Identificateur globalement unique (GUID).

Java Générer un UUID

L'utilisation de l'UUID dépend de la situation, des cas d'utilisation, de la complexité et des conditions. Certaines des utilisations de l'UUID sont :

  • Il est utilisé pour générer des URN (Uniform Resource Names) uniques.
  • Il peut également être utilisé pour générer des identifiants de transaction.
  • Largement utilisé dans une application cryptographique.
  • Dans une application Web, il peut être utilisé pour générer des identifiants de session.

Types d'UUID

Il existe quatre types d'UUID :

liste de tableaux triée java
  • UUID temporel (version 1)
  • UUID de sécurité DCE (version 2)
  • UUID basé sur le nom (versions 3 et 5)
  • UUID généré aléatoirement (version 4)

Variantes d'UUID

Il existe de nombreuses variantes de l'UUID mais Sel de lixiviation Cette variante est largement utilisée. La disposition de la variante 2, c'est-à-dire Sel de lixiviation est comme suit:

Les MSB se composent des champs non signés suivants :

0xFFFFFFFF00000000 temps_bas

comparer à une chaîne

0x00000000FFFF0000 heure_milieu

Version 0x000000000000F000

0x0000000000000FFF heure_salut

Les LSB se composent des champs non signés suivants :

classe d'objet en Java

variante 0xC000000000000000

0x3FFF000000000000 horloge_seq

0x0000FFFFFFFFFFFF nœud

Le champ Variant contient une valeur qui identifie la disposition de l'UUID. La disposition décrite ci-dessus n'est valable que pour la variante 2.

Classe UUID Java

Pour générer le UUID , le langage de programmation Java fournit la classe UUID. La classe appartient à java.util emballer. Il étend la classe Object et implémente le sérialisable et comparable interface. La classe génère un UUID immuable qui représente une valeur de 128 bits.

Méthodes de classe Java UUID

Méthodes Description
clockSequence() Il renvoie la valeur de séquence d'horloge associée à cet UUID spécifié.
comparer aux() La méthode compare l'UUID avec l'UUID spécifique.
équivaut à() La méthode compare cet objet à l'objet spécifié.
deChaîne() Il génère un UUID à partir de la représentation String.
getLeastSignificantBits() Il renvoie les 64 bits les moins significatifs de la valeur de 128 bits de cet UUID.
getMostSignificantBits() Il renvoie les 64 bits les plus significatifs de la valeur de 128 bits de cet UUID.
code de hachage() Il renvoie un code de hachage pour cet UUID.
nomUUIDFromBytes() Il récupère un UUID version 3 (basé sur le nom) basé sur le tableau d'octets spécifié.
nœud() Il renvoie une valeur de nœud associée à l'UUID spécifié.
aléatoireUUID() Il renvoie un UUID généré aléatoirement.
horodatage() Il renvoie une valeur d'horodatage associée à cet UUID spécifié.
àChaîne() Il renvoie un objet String représentant cet UUID.
une variante() Il est utilisé pour obtenir la variante associée à l'UUID spécifié.
version() Nous pouvons obtenir le numéro de version associé à l'UUID spécifié.

Générer un UUID

L'exemple suivant génère un UUID aléatoire.

suite d'outils à ressort

UUIDExample.java

 import java.util.UUID; public class UUIDExample { public static void main(String args[]) { //generates random UUID UUID uuid=UUID.randomUUID(); System.out.println(uuid); } } 

Sortir:

 2b733549-d2cc-40f0-b7f3-9bfa9f3c1b89 

Convertir d'une chaîne en un UUID

StringVersUUIDExample.java

 import java.util.UUID; public class StringtoUUIDExample { public static void main(String args[]) { //randomly generates a UUID UUID uuid = UUID.randomUUID(); System.out.println('Randomly Generated UUID: '+uuid); //converts the randomly generated UUID into String String uuidAsString = uuid.toString(); System.out.println('UUID as String: '+uuidAsString); //generates a UUID from the String UUID sameUuid = UUID.fromString(uuidAsString); System.out.println('UUID from String: '+sameUuid); //compares UUID generated from the string with the randomly generated UUID System.out.println(sameUuid.equals(uuid)); } } 

Sortir:

 Randomly Generated UUID: fe8a03d7-6495-4231-9843-8ee2f5282620 UUID as String: fe8a03d7-6495-4231-9843-8ee2f5282620 UUID from String: fe8a03d7-6495-4231-9843-8ee2f5282620 true