`

java.util.UUID

    博客分类:
  • java
阅读更多

GUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随即数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复。 
 
    UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的ID
import java.util.UUID;
public class Test {
 public static void main(String[] args) {
  UUID uuid = UUID.randomUUID(); 
  System.out.println (uuid);
}
}
编译运行输出:
07ca3dec-b674-41d0-af9e-9c37583b08bb

UUID的Java参考文档请参照:
http://www.cuku.net/api/java/util/UUID.html

 

另外一个说明:
UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成UUID的API。UUID按照开放软件基金会(OSF)制定的标准计算,用到了以太网卡地址、纳秒级时间、芯片ID码和许多可能的数字。由以下几部分的组合:当前日期和时间(UUID的第一个部分与时间有关,如果你在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余相同),时钟序列,全局唯一的IEEE机器识别号(如果有网卡,从网卡获得,没有网卡以其他方式获得),UUID的唯一缺陷在于生成的结果串会比较长。关于UUID这个标准使用最普遍的是微软的GUID(Globals Unique Identifiers)。

 

调查:
有 4 种不同的基本 UUID 类型:基于时间的 UUID、DCE 安全 UUID、基于名称的 UUID 和随机生成的 UUID。这四种类型的UUID产生方法请调查。同时,是否可以控制产生的UUID长度在一定范围内。

分享到:
评论

相关推荐

    JSON序列化与反序列化JAVA工具

    d2 = java.util.UUID.randomUUID(); bjson.put("b1", d2.toString()); d2 = java.util.UUID.randomUUID(); bjson.put("b2", d2.toString()); d2 = java.util.UUID.randomUUID(); bjson.put("b3", d2.toString...

    JSON序列化及反序列化工具

    d2 = java.util.UUID.randomUUID(); bjson.put("b1", d2.toString()); d2 = java.util.UUID.randomUUID(); bjson.put("b2", d2.toString()); d2 = java.util.UUID.randomUUID(); bjson.put("b3", d2.toString...

    fast-uuid用于快速高效地解析和编写UUID的Java库

    boolean isEqual = uuid.equals(anotherUuid); // 转换成16进制字符串 String hexString = uuid.toString(); ``` 总的来说,`fast-uuid`是Java开发者在处理大量UUID操作时的一个高效选择,它优化了标准库的不足,...

    java工具类集合

    9. `java.util.UUID`: - 生成全局唯一的标识符(UUID),常用于创建唯一的记录标识。 10. `java.util.regex` 包: - 提供正则表达式相关的类和接口,如`Pattern`和`Matcher`,用于文本匹配和操作。 11. `java....

    UUID随机数字

    import java.util.UUID; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget....

    jdk与javauuidgenerator生成uuid

    UUID uuid = UUID.randomUUID(); System.out.println(uuid.toString()); ``` `nameUUIDFromBytes()`方法则是根据指定的字节数组生成一个UUID,适用于基于特定数据生成标识的情况。而`timestamp()`返回的是UUID中的...

    JAVA UUID 生成.txt

    UUID uuid = UUID.randomUUID(); ``` ##### 实现代码示例 ```java package com.mytest; import java.util.UUID; public class UTest { public static void main(String[] args) { UUID uuid = UUID....

    自动生成主键uuid.zip

    "自动生成主键uuid.zip"这个压缩包文件很可能是包含了一个Java程序示例,用于演示如何生成这样的32位ID。 在Java中,生成UUID主要通过`java.util.UUID`类提供的静态方法。`UUID.randomUUID()`是生成一个随机的UUID...

    java常用工具类——个人总结

    - `java.util.UUID` 生成全局唯一的标识符。 - `java.util.zip` 包提供了压缩和解压缩功能,如`ZipInputStream`和`ZipOutputStream`。 以上就是Java中常用的一些工具类的简要介绍,这些工具类大大提高了开发效率...

    java生成唯一id(uuid)(不依赖jdk5,自己实现的)

    本篇我们将深入探讨如何在不依赖JDK 5的新特性(如`java.util.UUID`类)的情况下,自行实现一个UUID生成器。 首先,我们需要理解UUID的基本结构。一个UUID由五部分组成:时间戳、节点ID、序列号、变种和版本。...

    Java 常用工具类集合

    10. **java.util.UUID**: 生成全局唯一标识符(UUID),在分布式系统中尤其有用。 11. **java.util.zip**: 提供了压缩和解压缩的工具类,如`ZipOutputStream`和`ZipInputStream`用于处理ZIP格式的文件。 以上只是...

    浅谈java获取UUID与UUID的校验

    在 Java 中,我们可以使用 UUID.randomUUID() 方法来生成一个随机的 UUID。同时,我们也可以使用 UUID.nameUUIDFromBytes() 方法来生成一个基于名称的 UUID。 关于 UUID 的校验,Java 提供了多种方法来实现。我们...

    比较全的java工具类

    - `java.util.UUID`:生成全局唯一的标识符。 - `java.util.Arrays`:处理数组的操作,如排序、搜索、复制等。 - `java.util.Collections`:操作集合的工具类,如排序、反转、填充等。 以上只是Java工具类的一...

    PB生成UUID.zip

    myEntity.setUuid(UUID.randomUUID().toString()); ``` 5. 序列化与反序列化:根据需要,可以将生成的`MyEntity`对象序列化为二进制数据,也可以从二进制数据反序列化回`MyEntity`对象。 在实际应用中,PB生成UUID...

    常用的Java工具类

    7. **`java.util.UUID`**:生成全局唯一的标识符,通常用于创建不重复的ID。 8. **`java.util.regex` 包**:正则表达式的相关工具,包括`Pattern`和`Matcher`类,用于文本模式匹配和查找。 9. **`java.security` ...

    Java常用工具类集合

    `java.util.Random`用于生成随机数,`java.util.UUID`则生成全局唯一的标识符。 这些工具类和API是Java开发中不可或缺的部分,掌握它们能显著提高开发效率并确保代码的健壮性。在实际项目中,开发者往往需要根据...

    java编写根据模板导出excel

    filename = UUID.randomUUID() + templateFile; // FacesContext context = FacesContext.getCurrentInstance(); // ServletContext servletContext = (ServletContext) // context.getExternalContext...

    UUID完全解析.txt

    UUID uuid = UUID.randomUUID(); // 生成UUID String str = uuid.toString(); // 将UUID转换为字符串 System.out.println(str.replace("-", "")); // 输出去除横线的UUID } } ``` 2. **其他语言示例**:除了...

    java UUID16的生成下载

    运行上述`Uuid16.java`程序,将输出两个UUID,第一个是通过`UUID.randomUUID()`生成的,可能是版本4,因为版本1的生成需要额外的信息,如MAC地址,Java默认不会提供。第二个是通过构造函数生成的,模拟了UUID1的生成...

    java 生成32位UUID

    return uuid.toString().replaceAll("-", ""); } public static void main(String[] args) { String shortUUID = generate32BitUUID(); System.out.println("32位UUID: " + shortUUID); } } ``` 这段代码会...

Global site tag (gtag.js) - Google Analytics