本文目录一览:
什么是UUID,Java中怎么产生UUID
UUID: 通用唯一识别码 (Universally Unique Identifier),是根据时间,机器码,网络地址生成的全球唯一数。
引入 java.util.UUID,直接调用以下即可得到一个32为的随机数,即UUID.
UUID uuid = UUID.randomUUID();
什么是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)。
其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字。而标准的UUID格式为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (8-4-4-4-12),可以从cflib 下载CreateGUID() UDF进行转换。
参考资料:百度百科-UUID
Java UUID是否区分大小写
首先说一下原理,我所知道由Java生成的UUID是通过java.Util.UUID的静态方法randomUUID()来生成的。而UUID一般用于数据库的主键填充。
然后回答你的问题,如果你直接使用UUID类的这个方法生成UUID的话,默认是小写英文字符和数字的组合(更准确地说是16进制数)。如果你想区分大小写,那么有两种方法:
1、在生成UUID后做大写处理,再存入数据库。当然,你在查询数据库的数据时,涉及到主键时也要注意相应条件的改变;
2、先存入数据库,然后在查询条件中进行处理。一般的关系数据库都会有字符大小写相关的函数。
结论:默认生成的UUID是小写的,可以通过其他方式将其改成大写。因为数据库对大小写是区分的,所以相当于对UUID也是区分大小写的。
Java存储函数中使用UUID
UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的ID。 import java.util.UUID; public class Test { public static void main(String[] args) { UUID uuid = UUID.randomUUID(); System.out.println (uuid); } }