java - length - ¿Cómo generar UUID basados en el tiempo?
que es id en java (3)
Quiero generar un UUID basado en el tiempo en java - java.utilƒIDID.randomUUID () genrates una versión UUID 4. ¿Cómo generar un UUID versión 1 (basado en el tiempo)? ¿Hay una biblioteca separada para eso o es de alguna manera proporcionada en la API de Java 7 y me la estoy perdiendo?
FasterXML Java Uuid Generator (JUG)
https://github.com/cowtowncoder/java-uuid-generator
UUID uuid = Generators.timeBasedGenerator().generate();
Tenga mucho cuidado al usar com.eaio.uuidmericaID, si necesita generar GUID por tiempo que no sea la hora actual, ya que esto siempre generará el mismo UUID para el tiempo determinado. Entonces, si sus datos tienen el requisito de generar UUID, donde los registros pueden tener el mismo tiempo, esto generará el mismo UUID.
Necesitábamos esto para generar UUID para los registros, que se crean con anticipación y también múltiples registros al mismo tiempo, intentamos modificarlo intentando usar UUIDGen.createTime (). Descubrimos que tiene un efecto secundario para cambiar el tiempo de los registros fuera de servicio. Si una solicitud posterior para crear UUID
tiene una marca de tiempo más antigua que la solicitud anterior, terminará teniendo un UUID
, que se basa en la marca de tiempo de la solicitud anterior.
Después de todo el análisis, tuvimos que volver simplemente a crear UUID
en el momento de la creación, para que no tengamos que pasarlo como argumento. Cualquiera que sea la solución que UUID
para generar UUID
en un momento posterior, cada uno tiene un inconveniente.
String timeuuid = com.datastax.driver.core.utils.UUIDs.timeBased().toString();
eche un vistazo a https://docs.datastax.com/en/drivers/java/2.0/com/datastax/driver/core/utils/UUIDs.html