UUID的运用

admin 8个月前 ( 03-27 15:04 ) 0条评论
摘要: UUID的目的,是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。...

大局仅有标识符(GUID,Globally Unique Identifier)也称作 UUID(Universally Unique IDentifier) 。GUID 是UUID的运用微软对UUID这个规范的完成。

1.UUID 简介

UUID 意义是通用仅有识别码 (Universally Unique Identifier),这是一个软件建构的规范。

也是被开源软件基金会 (Open Software F药香如蝶oundaUUID的运用tion, OSF) 的安排应用在分布式核算环境 (Distributed Computing Environment, DCE) 范畴的一部分。

UUID 的意图,是让分布式体系中的一切元素,都能有仅有的辨识资讯,而不需求透过中心操控端来做辨识资讯的指定。

如此一来,每个人都能够树立不与其它人抵触的 UUUUID的运用ID。在这样的情况下,就不需考虑数据库树立时的称号重复问题。

2.UUID 组成

UUID确保对在同一时空中的一切机器都是仅有的。一般无极桩的正确办法图片渠道会提王木犊供生成的API。

依照敞开软件基金会(OSF)拟定的规范核算,用到了以太网卡地址、纳秒级时刻、芯片ID码和许多或许的数字。

UUID由以下几部分的组合:

(1)当时日期和时刻,UUID的第一个部分与时刻有关,假如你在生成一个UUID之后,过几秒又生成一个UUID,则第一个化氏一窝疯经典配方部分不同,其他相同。

(2)时钟序列。

(3)大局仅有的IEEE机器识别号,假如有网卡,从网卡MAC地址取得,没有网卡以其他方法取得。

UUID的仅有缺点在于生成的成果串会比babyentertainment较长。关于UUID这个规范运用最遍及的是微软的GUID(Globals Unique Identifiers)。

规范的UUID格局为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (8-4-4-4-12)。

3.UUID的生成

UUID是1.5中新增的一个类,在java.util下,用它能够发生一个声称全球仅有的ID.

import java.util.UUID;

public class JavaDe真紧mo {

public static void羌活扮演者 main(String[] args) {

UUID uuid = UUID.randomUUID();

System.out.println(u七夜冤灵uid);

}

}

在cmd形式下履行的成果如下面截图:



JDK1.5

假如运用的JDK1.5的话,那么生成UUID变成了一件简略的事,由于JDK完成了UUUUID的运用ID:

java.util.UUID,直接调用即可.

UUID uuid =立刻听戏 UUID.randomUUID();

String s = UUID.randomUUID的运用UUID().toString();//用来生成数据库的主键id十分不错。

//下面便是完成为数据库获取一个仅有的主键id的代码

public cl雷宛婷ass UUIDGenerator {

public UUIDGenerator() {UUID的运用

}

/**

* 取得一个UUID

* @return Str死界游戏城ing UUID

*/

public static String getUUID(){

Stnylonvipring s = UUID.randomUUID().toString();

//去掉“-”符号

return s.substring(0,8fm815)+s.substring(9,13)+s.substring(14,18)+s.substring(19,23)+s.substring(24);

}

/**

* 取得指定数意图UUID

* @UUID的运用param number int 需求取得的UUID数量

* @return String[] UUID数组

*/

public static String[] getUUID(int number){

if(number < 1){

return null; 走过大陕北

}

String[] ss 皆藤爱子= new Str大草帽年代i宠物老友记ng[number];

for(int i=0耶律原;i

ss[i] = getUUID();

}

return ss;

}

public static void main(String[] args){

String[] ss = getUUID(10);

for(int i=0;i

System.out.println(ss[i]);

}

}

}

下方是代码实践运转成果截图








南大盛联20年来一向致力于高端IT训练--打造高档软件人才实战训练专家,学生对咱们的认但是咱们一向行进的动力;项目团队全球招聘,特聘来自海外的教师进行任教,选用100%商业项目进行实战训练,线上线下同步进行。

课程悉数紧随市场需求进行规划,而且动态进行调整;7天免费试听,0首付开端学习,学完后进行100%引荐工作,不满意工作岗位2次引荐。

选定一个渠道,知道一群情投意合的朋友,你的未来人生路必定不一样。

现在现已开设下面这些训练项目

Java训练

安卓训练

JavaWeb训练

Linux训练

云服务器安置训练

HTML5训练

SEO训练

视频剪辑训练

UI训练

欢迎您们共享给自己乐意共享的朋友,我们一起来前进;彼此转达,咨询,学习。金姬秀

南大盛联训练理念:我懂,我也能让你懂。

文章版权及转载声明:

作者:admin本文地址:http://www.enkura.com/articles/565.html发布于 8个月前 ( 03-27 15:04 )
文章转载或复制请以超链接形式并注明出处库里疯狂三分集锦