生成32位UUID及生成指定个数的UUID

参考地址:https://blog.csdn.net/xinghuo0007/article/details/72868799

UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成的API。 按照开放软件基金会(OSF)制定的标准计算,用到了以太网卡地址、纳秒级时间、芯片ID码和许多可能的数字

使用UUID的好处在分布式的软件系统中(比如:DCE/RPC, COM+,CORBA)就能体现出来, 
它能保证每个节点所生成的标识都不会重复,并且随着WEB服务等整合技术的发展,UUID的优势将更加明显。根据使用的特定机制,UUID不仅需要保证是彼此不相同的,或者最少也是 
与公元3400年之前其他任何生成的通用唯一标识符有非常大的区别。UUID最少在3000+年内不会重复。 

那么重点来了怎么生成UUID呢?

1.生成一个32位的UUID:

public static String getUUID32(){
return UUID.randomUUID().toString().replace("-", "").toLowerCase();
}
是的,你没看错,就是这么简单,UUID这个类早在jdk1.5就出来了,使用起来非常的方便,有木有

2.生成指定个数的UUID:
//得到指定数量的UUID,以数组的形式返回
public static String[] getUUID(int num){
if( num <= 0) return null;
String[] uuidArr = new String[num];
for (int i = 0; i < uuidArr.length; i++) {
uuidArr[i] = getUUID32();
}
return uuidArr;
}
//得到32位的uuid
public static String getUUID32(){
return UUID.randomUUID().toString().replace("-", "").toLowerCase();
}
只要写这样的一个工具类就轻松搞定,记得工具类最好是写成static静态的,调用起来也更方便,不需要每次调用方法都先创建对象。
posted @ 2018-08-09 15:59  王者之巅  阅读(9540)  评论(0编辑  收藏  举报