`
小网客
  • 浏览: 1218828 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAVA如何产生uuid

    博客分类:
  • Java
阅读更多

直接通过java.util.randomUUID() 产生,源码如下:

  public static UUID randomUUID() {
        SecureRandom ng = numberGenerator;
        if (ng == null) {
            numberGenerator = ng = new SecureRandom();
        }

        byte[] randomBytes = new byte[16];
        ng.nextBytes(randomBytes);
        randomBytes[6]  &= 0x0f;  /* clear version        */
        randomBytes[6]  |= 0x40;  /* set to version 4     */
        randomBytes[8]  &= 0x3f;  /* clear variant        */
        randomBytes[8]  |= 0x80;  /* set to IETF variant  */
        return new UUID(randomBytes);
    }

 注意

 1.numberGenerator = ng = new SecureRandom();
 2.private static volatile SecureRandom numberGenerator = null;

 1.是连续赋值,引用相同

 2.volatile 标识某变量在内存中仅存在一份不存在copy,如果变量比较简单那么可以认为是线程同步的另外一种机制

 

0
0
分享到:
评论

相关推荐

    JAVA UUID 生成全球唯一ID

    GUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随即数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复

    java uuid

    java uuid 产生全球唯一序号,不重复 可以用作数据库的发号器 mojianpo 转载

    fast-uuid:一个Java库,可快速有效地解析和编写UUID

    与Java 8和更早版本相比,它产生了最显着的性能提升。 在基准测试中,解析UUID的速度比编写JU实现快14倍,编写UUID的速度快6倍。 与Java 9和更高版本相比,它在解析UUID时快大约六倍,并且在编写UUID方面没有任何...

    uuid-jar包

    为你提供一个可以产生一个不重复的UUID工具

    Java实现产生随机字符串主键的UUID工具类

    主要介绍了Java实现产生随机字符串主键的UUID工具类,涉及java随机数与字符串遍历、转换等相关操作技巧,需要的朋友可以参考下

    javacode-coverage

    (curl -s https://codecov.io/bash)产生承保范围报告将JaCoCo插件添加到您的pom.xml文件,注意事项私人回购您将需要添加以下.travis.yml : env : global : - CODECOV_TOKEN=:uuid-repo-tokenJaCoCo报告确保您使用的...

    UUIDCompatibility:启用对尚未更新为使用 UUID 的插件的支持

    #UUID兼容性##警告此插件使用危险代码,可能会产生负面影响,请记住在发生这种情况时定期备份服务器。 ##要求Java 7或更高版本。 由于反射代码的编写方式,它应该适用于 CraftBukkit 的最新版本。 ##执照我们...

    java_1_project

    (curl -s https://codecov.io/bash)产生承保范围报告将JaCoCo插件添加到您的pom.xml文件中,注意事项私人回购您将需要添加以下.travis.yml : env : global : - CODECOV_TOKEN=:uuid-repo-tokenJaCoCo报告确保您使用...

    从J2SE到J2EE知识点介绍

    1. 异常类的产生、捕获与处理 34 2. 抛出异常 36 二. Swing程序设计 38 (一) Swing概述 38 1. 布局管理器 39 2. 流布局管理器 39 3. 边界布局管理器 41 4. 网格布局管理器 42 5. 盒式布局管理器 43 (二) 面板及组件...

    hadoop-2.4.1安装软件包以及教程jdk.zip

    UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c" IPADDR="192.168.1.101" ### NETMASK="255.255.255.0" ### GATEWAY="192.168.1.1" ### 1.3修改主机名和IP的映射关系 vim /etc/hosts 192.168.1.101 itcast ...

    Hibernate中文API大全

    你不能使用一个IdentifierGenerator产生组合关键字。一个应用程序必须分配它自己的标识符。 使用<composite-id> 标签(并且内嵌元素)代替通常的标签。比如,OrderLine类具有一个主键,这个主键依赖于Order的(联合)...

    LIMES-Service:一个运行石灰的Servlet接口

    产生 描述 \ 邮政 应用程序/ xml应用程序/ json 应用程序/ json 使用有效负载中传递的配置执行LIMES \ {uuid} 得到 读取在LIMES流程中生成的TAB文件的内容 XML配置 该服务接受配置中定义的LIMES XML文件。 它已...

    ssh(structs,spring,hibernate)框架中的上传下载

     LobHandler必须注入到Hibernate会话工厂sessionFactory中,因为sessionFactory负责产生与数据库交互的Session。LobHandler的配置如代码 5所示:  代码 5 Lob字段的处理句柄配置 1. 2. … 3. 4. class="org....

Global site tag (gtag.js) - Google Analytics