Hibernate Grails使用uuid id生成器:不是很随机
一个简单的Grails4应用程序使用带有Hibernate7.0.4插件的Hibernate Grails使用uuid id生成器:不是很随机,hibernate,uuid,grails-4,Hibernate,Uuid,Grails 4,一个简单的Grails4应用程序使用带有Hibernate7.0.4插件的uuidid生成器和Ubuntu20.04下的PostgreSQL 10。以下是创建4个实例后的一些输出: => select id,ttag,name from msg_template; id | ttag | name ----------------------------------+------+------------
uuid
id生成器和Ubuntu20.04下的PostgreSQL 10。以下是创建4个实例后的一些输出:
=> select id,ttag,name from msg_template;
id | ttag | name
----------------------------------+------+-----------------
ff808181781632030178163215190000 | publ | Notice01
ff8081817816320301781632151f0001 | publ | Notice02
ff808181781632030178163215230002 | publ | Signing01
ff8081817816320301781635161b0003 | acme | Some thingy!
我的假设是uuid=随机性,但这个结果是非常不随机的。随机性不是预期的吗?UUID有不同的版本和变体,请参阅。并非每个版本都会生成随机值 但是,版本4基于随机数生成器生成随机值 对于Java,可以通过系统属性Java.security.egd更精确地定义随机数生成器,请参阅 使用java.util.UUID.randomUUID()可以生成版本4的UUID 对于Hibernate,有不同的方式使用UUID