java UUID的创建:

参考:http://blog.csdn.net/yaerfeng/article/details/7070369 可以研究一下最后的一段代码;

http://spiritfrog.iteye.com/blog/604048

http://www.cnblogs.com/jdonson/archive/2009/07/22/1528466.html

package com.stono.test;

import java.util.UUID;

public class TestUUID {

    public static void main(String[] args) {
UUID uuid = UUID.randomUUID();
printUUID(uuid);
/**
* dd1646bd-f104-4de8-9d08-582a823b39e6
length:36
version:4
variant:2
*/
// 输入参数必须是一个已有的UUID
UUID uuid3 = UUID.fromString("2e8314b1-0b5d-4475-9ea1-52b01acbeaac");
printUUID(uuid3);
/**
* 2e8314b1-0b5d-4475-9ea1-52b01acbeaac
length:36
version:4
variant:2
*/
// 如下三个方法都会抛出异常;
// System.out.println(uuid.node());
// System.out.println(uuid.timestamp());
// System.out.println(uuid.clockSequence());
/**
* Exception in thread "main" java.lang.UnsupportedOperationException: Not a time-based UUID
at java.util.UUID.node(UUID.java:363)
at com.stono.test.TestUUID.main(TestUUID.java:15)
*/
UUID uuid2 = UUID.randomUUID();
printUUID(uuid2);
System.out.println(uuid2.compareTo(uuid));
System.out.println(uuid.compareTo(uuid2));
System.out.println(uuid.compareTo(uuid)); // 这样的输入会产生 00000000-0000-0001-0000-000000000002 UUID
UUID uuid4 = new UUID(1L, 2L);
printUUID(uuid4);
} private static void printUUID(UUID uuid) {
String string = uuid.toString();
System.out.println(string);
System.out.println("\t\t\tlength:"+string.length());
/**
* version 表示意义:
* 1 基于时间的 UUID
2 DCE 安全 UUID
3 基于名称的 UUID
4 随机生成的 UUID
*/
System.out.println("\t\t\tversion:"+uuid.version());
/**
* variant 表示意义:
* 0 为 NCS 向后兼容保留
2 Leach-Salz 变体(由此类使用)
6 保留,Microsoft Corporation 向后兼容
7 保留供以后定义使用
*/
System.out.println("\t\t\tvariant:"+uuid.variant());
System.out.println("\t\t\thashCode:"+uuid.hashCode());
//返回此 UUID 的 128 位值中的最高有效 64 位。
System.out.println("\t\t\tMostSignificantBits:"+uuid.getMostSignificantBits());
//返回此 UUID 的 128 位值中的最低有效 64 位。
System.out.println("\t\t\tLeastSignificantBits:"+uuid.getLeastSignificantBits());
System.out.println("==================");
} }

最新文章

  1. 过段时间逐步使用HTML5新增的web worker等内容
  2. 【记录】ASP.NET MVC 4/5 Authentication 身份验证无效
  3. 20个编写现代CSS代码的建议
  4. Mysql常见报错解决方法
  5. 完全卸载sql2005
  6. linux下virtualenv的python版本
  7. WEB中调用Nutch执行JOB抓取
  8. JAVA printWriter中write()和println()区别
  9. 5.Java 加解密技术系列之 DES
  10. SpringMVC系列之(一) 入门实例
  11. 发布版本Debug和Release的区别
  12. CSS魔法堂:一起玩透伪元素和Content属性
  13. Vuejs核心思想学习笔记
  14. java 实现简单链式队列
  15. C# 模拟多线程下载文件
  16. eclipse中tomcat调试正确关联源码
  17. 纯H5+c3实现表单验证
  18. groovy编程注意事点
  19. 前后端同学必会的Linux基础命令
  20. 15.01.29-MVC中用Areas分解项目

热门文章

  1. PAT (Advanced Level) 1049. Counting Ones (30)
  2. CentOS 7 安装 GlusterFS
  3. Android启动脚本init.rc(2)
  4. 在线生成二叉树(基于EaselJS(canvas))
  5. jquery全选框的实现
  6. sping 对 hibernate进行事务管理--Annotation, xml, 大多数使用XML
  7. Javac和java命令执行java程序
  8. 史上最强php生成pdf文件,html转pdf文件方法
  9. mac android studio 更新sdk的解决方案
  10. [转载]七天学会NodeJS