Mysql
 sql >> Base de données >  >> RDS >> Mysql

Générer un identifiant unique

J'utilise RandomStringUtils.randomAlphanumeric() méthode de commons-lang pour y parvenir :

import org.apache.commons.lang.RandomStringUtils;

public static final int ID_LENGTH = 10;

public String generateUniqueId() {
    return RandomStringUtils.randomAlphanumeric(ID_LENGTH);
}

Si vous utilisez Maven, assurez-vous d'avoir ajouté commons-lang aux dépendances du projet :

<dependency>
    <groupId>commons-lang</groupId>
    <artifactId>commons-lang</artifactId>
    <version>2.6</version>
</dependency>

C'est à vous et à votre projet. La génération d'identifiants fait-elle partie de la logique métier ? Si oui et que toute la logique est écrite sur Java, alors écrivez-la sur Java. Si tout ou partie de la logique est déléguée à la base de données, générez-y un identifiant (mais dans ce cas, vous aurez une forte dépendance à une base de données particulière).