Mysql
 sql >> Database >  >> RDS >> Mysql

come recuperare l'UUID java memorizzato nel DB come binario

Penso che tu possa convertire la tua stringa UUID in un autentico UUID oggetto tramite UUID#fromString() metodo. Quindi, puoi confrontare i campi di bit meno e più significativi dei due UUID che hai:

boolean UUIDIsEqual(UUID one, String twoInput) {
    UUID two = UUID.fromString(twoInput);
    if (one.getLeastSignificantBits() == two.getLeastSignificantBits() &&
        one.getMostSignificantBits() == two.getMostSignificantBits()) {
        return true;
    }

    return false;
}

Se, invece di avere un UUID per riferimento hai un array di byte, quindi puoi semplicemente usare toUUID() metodo che devi già convertire la stringa in un UUID.

Segui il link sottostante per una demo che mostra che la conversione da stringa a UUID funziona ed è logicamente corretta:

Dimostrazione