一、什么是UUID?
UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每个人都可以创建不与其它人冲突的UUID。在这样的情况下,就不需考虑数据库创建时的名称重复问题。目前最广泛应用的UUID,是微软公司的全局唯一标识符(GUID),而其他重要的应用,则有Linux ext2/ext3文件系统、LUKS加密分区、GNOME、KDE、Mac OS X等等。另外我们也可以在e2fsprogs包中的UUID库找到实现。(来源百度百科)
通俗的讲,UUID就是随机生成的,不会产生冲突的字符串,具有唯一性。
二、UUID的应用
本案例主要针对mysql中id主键无法像oracle数据中的函数sys_guid可以自动生成UUID,所以,需要通过代码来实现。
UUID在java.util.UUID类中,可以直接调用
/***
* 利用UUID算法生成主键
* @return
*/
public static String createId() {
UUID uuid = UUID.randomUUID();
return uuid.toString().replace("-", "");
}
直接写一个静态方法,通过该方法生成一个UUID,但是由于UUID是带“-”的,需要转换成无"-"字符串。
按照上述方法即可。