UUID.randomUUID().toString() 生成主键 介绍与使用

简介: UUID.randomUUID().toString()介绍UUID.randomUUID().toString()是javaJDK提供的一个自动生成主键的方法。UUID(Universally Unique Identifier)全局唯一标识符,是指在一台机器上生成的数字它保证对在同一时空中的所有机器都是唯一的是由一个十六位的数字组成,表现出来的形式

UUID.randomUUID().toString()


介绍

  • UUID.randomUUID().toString()是javaJDK提供的一个自动生成主键的方法。
  • UUID(Universally Unique Identifier)全局唯一标识符,是指在一台机器上生成的数字
  • 它保证对在同一时空中的所有机器都是唯一的
  • 是由一个十六位的数字组成,表现出来的形式

由以下几部分的组合:

  • 当前日期和时间

(UUID的第一个部分与时间有关,如果你在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余相同),时钟序列

全局唯一的IEEE机器识别号(如果有网卡,从网卡获得,没有网卡以其他方式获得),


缺陷:

  • UUID的唯一缺陷在于生成的结果串会比较长。

语法


System.out.println(UUID.randomUUID().toString())
控制台:
4bc1dd0d-5625-4068-9624-31c77a4ee496
目录
相关文章
|
Java 数据库
如何使用JPA的UUID主键生成策略
这篇文章只写给主键用uuid并且用jpa的小伙伴。 1. 数据实体类 @Entity @Table(name = "ip_user") @GenericGenerator(name = "jpa-uuid", strategy = "uuid") ...
3719 0
|
5月前
|
存储 数据库
UUID主键生成策略
【7月更文挑战第9天】在分库分表场景中,自增主键不再适用,面试时应提及这一挑战。主键生成策略包括UUID,虽简单但有两弊端:长度过长且非递增。递增主键能优化存储,避免页分裂导致的性能下降。准备时需了解常见策略、创新方案及优化措施。例如,UUID的非递增性可能导致数据库的页分裂和性能影响。
52 3
|
7月前
|
缓存 算法 安全
被追着问UUID和自增ID做主键哪个好,为什么?
讨论了UUID和自增ID作为数据库主键的优缺点。UUID全局唯一,适合分布式系统,但存储空间大,不适合范围查询。自增ID存储空间节省,查询效率高,但分库分表困难,可预测性高。UUID版本包括基于时间戳(V1)、随机数(V4)以及基于名称空间的MD5(V3)和SHA1(V5)散列。
被追着问UUID和自增ID做主键哪个好,为什么?
|
7月前
|
算法 云计算 索引
生成UUID和自定义UUID算法
生成UUID和自定义UUID算法
430 0
|
自然语言处理 算法 安全
还在用uuid ,ulid来了
还在用uuid ,ulid来了
1714 0
|
存储
MongoTemplate 多表查询中 将String转换为ObjectId
MongoTemplate 多表查询中 将String转换为ObjectId
282 0
uuid v4
第四版uuid
315 0
|
JavaScript 前端开发