sql >> Base de Datos >  >> RDS >> Mysql

cómo recuperar el UUID de Java almacenado en DB como binario

Creo que puede convertir su cadena UUID en un UUID de buena fe objeto a través del UUID#fromString() método. Luego, puede comparar los campos de bits menos y más significativos de los dos UUID que tiene:

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

    return false;
}

Si, en lugar de tener un UUID para la referencia, tiene una matriz de bytes, entonces puede usar toUUID() método que ya tiene para convertir la cadena a un UUID.

Siga el enlace a continuación para ver una demostración que muestra que la conversión de cadena a UUID funciona y es lógicamente correcta:

Demostración