UUID
1:java中生成随机的id,可以引入import java.util.UUID包,
public static String getUUID() {
UUID uuid = UUID.randomUUID();
String str = uuid.toString();
String uuidStr = str.replace("-", "");
return uuidStr;
}
2:加工uuid
如何利用java的UUID类生成32位UUID
import java.util.UUID;
/**
* Created by Ay on 2016/4/18.
*/
public class JavaUUIDTest {
public static void main(String[] args) {
//未加工的UUID
String preUuid = UUID.randomUUID().toString();
System.out.println(preUuid);
//第一种方法生成UUID,去掉“-”符号
System.out.println(UUID.randomUUID().toString().replace("-", ""));
//未加工的UUID
String preUuid2 = UUID.randomUUID().toString();
System.out.println(preUuid2);
//第二种生成UUID的方法,去掉“-”符号
String changUuid = preUuid2.substring(0,8)+preUuid2.substring(9,13)+preUuid2.substring(14,18)+preUuid2.substring(19,23)+preUuid2.substring(24);
System.out.println(changUuid);
}
}
生成32位UUID
3:uuid之版本
除了使用 JDK 原生的 API 之外,还可以使用 com.fasterxml.uuid.Generators,需要先在项目中加入该类的
Maven 依赖
<dependency>
<groupId>com.fasterxml.uuid</groupId>
<artifactId>java-uuid-generator</artifactId>
<version>3.1.4</version>
</dependency>
public class UUIDVersionExample {
public static void main(String[] args) {
UUID uuid1 = Generators.timeBasedGenerator().generate();
System.out.println("UUID : "+uuid1);
System.out.println("UUID 版本 : "+uuid1.version());
UUID uuid2 = Generators.randomBasedGenerator().generate();
System.out.println("UUID : "+uuid2);
System.out.println("UUID 版本 : "+uuid2.version());
}
}
``
Generators.timeBasedGenerator().generate() 可用于生成版本 1 的 UUID,Generators.randomBasedGenerator().generate() 可用于生成版本 4 的 UUID。
来看一下输出结果:
UUID : ebee82f5-cfd2-11ea-82a7-8536e13d4951
UUID 版本 : 1
UUID : d2ccc752-c824-4bbc-8cc7-52c8246bbc6a
UUID 版本 : 4