相关疑难解决方法(0)

使用Java中UUID的最高有效位进行冲突的可能性

如果我正在使用Long uuid = UUID.randomUUID().getMostSignificantBits()它有可能发生碰撞.它切断了最不重要的位,所以你有可能遇到碰撞,对吗?

java uuid collision

232
推荐指数
5
解决办法
19万
查看次数

如何减少使用randomUUID()生成的UUID的长度

我有一个简短的实用程序,我使用randomUUID()生成一个UUID.

String uuid = UUID.randomUUID().toString();
Run Code Online (Sandbox Code Playgroud)

但是,生成的uuid太长,长度为36.

无论如何,我可以将UUID的长度从36减少到接近16或16?

java uuid

20
推荐指数
2
解决办法
5万
查看次数

Java UUID压缩和解压缩

我想做以下......

a)将生成的UUID压缩为长度为8的String.

b)将压缩的UUID解压缩回原始UUID.

原因是因为我必须将UUID发送到伙伴系统,并且伙伴系统只接受UUID的8个字符,并且我不能请求更改伙伴系统.

因此,剩下的工作是将我所拥有的UUID压缩为8个字符串,然后在从伙伴系统返回消息时将其解压缩回原始UUID.

有任何想法吗?

谢谢.

java uuid

3
推荐指数
2
解决办法
6196
查看次数

如何在Java中获得32位唯一编号?

我需要在Java中生成一个唯一的32位数.我需要将数字作为Java int返回,这是接口所需的.你能否就此分享一些想法?

该号码将用作MySQL PK,并且多个线程可以同时生成自己的唯一ID.(抱歉决定不使用MySQL增量ID)

我尝试过UUID类,但它生成的数据似乎比我可以使用的更多.

我发现了这个,但不确定它是否有效:

    // seems no way to get int
    UUID id = UUID.randomUUID();
    System.out.println(id);

    // not working either?
    java.rmi.server.UID uid = new java.rmi.server.UID();
    System.out.println(uid.toString());

    // the one i am using
    SecureRandom prng = SecureRandom.getInstance("SHA1PRNG");
    prng.setSeed(System.currentTimeMillis());
    int ret = prng.nextInt();
    System.out.println(ret);
Run Code Online (Sandbox Code Playgroud)

java uuid guid uid

2
推荐指数
1
解决办法
9214
查看次数

标签 统计

java ×4

uuid ×4

collision ×1

guid ×1

uid ×1