java生成唯一guid(java生成唯一序列号)

发布时间:2022-11-15

本文目录一览:

1、java中生成的guid是多少位 2、怎样用java生成GUID与UUID 3、什么是UUID,Java中怎么产生UUID?

java中生成的guid是多少位

一个生成GUID的函数:

private string getGUID() {
    System.Guid guid = new Guid();
    guid = Guid.NewGuid();
    string str = guid.ToString();
    return str;
}

随机生成如下字符串: e92b8e30-a6e5-41f6-a6b9-188230a23dd2 格式说明: System.Guid.NewGuid().ToString(format)

格式 说明
N 32位:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx,如:e92b8e30a6e541f6a6b9188230a23dd2
D 由连字符分隔的32位数字:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,如:e92b8e30-a6e5-41f6-a6b9-188230a23dd2
B 括在大括号中、由连字符分隔的32位数字:{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx},如:{e92b8e30-a6e5-41f6-a6b9-188230a23dd2}
P 括在圆括号中、由连字符分隔的32位数字:(xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx),如:(e92b8e30-a6e5-41f6-a6b9-188230a23dd2)

怎样用java生成GUID与UUID

GUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随机数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复。

什么是UUID,Java中怎么产生UUID?

UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。

生成UUID的方法:

public static String getUUID32(){
    String uuid = UUID.randomUUID().toString().replace("-", "").toLowerCase();
    return uuid;
    // return UUID.randomUUID().toString().replace("-", "").toLowerCase();
}

注:因为一般数据库主键为String类型,所以接收类型为String,生成的uuid数据包含-,所以要去掉-,故使用:

UUID.randomUUID().toString().replace("-", "").toLowerCase()

扩展资料:

UUID由以下几部分的组合:

  1. 当前日期和时间,UUID的第一个部分与时间有关,如果你在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余相同。
  2. 时钟序列。
  3. 全局唯一的IEEE机器识别号,如果有网卡,从网卡MAC地址获得,没有网卡以其他方式获得。 UUID的唯一缺陷在于生成的结果串会比较长。关于UUID这个标准使用最普遍的是微软的GUID(Globals Unique Identifiers)。 在ColdFusion中可以用CreateUUID()函数很简单地生成UUID,其格式为: xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx(8-4-4-16) 其中每个 x0-9a-f 范围内的一个十六进制的数字。而标准的UUID格式为: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx(8-4-4-4-12) 可以从cflib下载CreateGUID() UDF进行转换。 参考资料:百度百科-UUID