用java生成永远唯一的id
一,什么是UUID
UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每个人都可以创建不与其它人冲突的UUID。在这样的情况下,就不需考虑数据库创建时的名称重复问题。目前最广泛应用的UUID,是微软公司的全局唯一标识符(GUID)。
UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。
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进行转换。
- 550e8400-e29b-41d4-a716-446655440000
二,代码:
public class testId {public static void main(String[] args) {String[] id=new String[10002];for (int i = 0; i < 10000; i++) {//截取最后一部分id[i]=UUID.randomUUID().toString().substring(24);}System.out.println(id.length);System.out.println("第一个:"+id[0]);for (int j = 0; j < 10000; j++) {for (int i = 0; i < 10000&&i!=j; i++) {if(id[j].equals(id[i]))System.out.println(id[j]);}}System.out.println("最后一个:"+id[9999]);}
}
结果:生成一万个:
用java生成永远唯一的id相关推荐
- java生成订单唯一编号_java唯一订单号生成
import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class IdWorker { protected static fi ...
- java生成永远不重复的随机数_java生成不重复随机数的方法
java生成不重复随机数的方法 发布时间:2020-07-01 11:00:00 来源:亿速云 阅读:225 作者:Leah java怎么实现生成不重复随机数 ?针对这个问题,这篇文章详细介绍了相对应 ...
- 一个生成全局唯一Sequence ID的高并发工厂类 (Java)
为什么80%的码农都做不了架构师?>>> Sequence是数据库系统按照一定规则自动增加的数字序列.这个序列一般作为代理主键(因为不会重复),没有其他任何意义. Sequen ...
- Hive中生成随机唯一标识ID的方法
2019独角兽企业重金招聘Python工程师标准>>> HIVE中处理的数据往往比较多,在处理数据的时候希望给处理得到的数据一个ID标识,这时候可以用到UUID. UUID的算法的核 ...
- java生成8位的uuid_分布式系统全局唯一ID简介、特点、生成
一.什么是分布式系统唯一ID 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识. 如在金融.电商.支付.等产品的系统中,数据日渐增长,对数据分库分表后需要有一个唯一ID来标识一条数据或消息, ...
- 面试官:高并发下,如何保证分布式唯一全局 ID 生成?
欢迎关注方志朋的博客,回复"666"获面试宝典 前言 系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结. 这篇文章就是给各位看官提供一个生成分布式唯一 ...
- java产生全局唯一的int类型_全局唯一ID设计
在分布式系统中,经常需要使用全局唯一ID查找对应的数据.产生这种ID需要保证系统全局唯一,而且要高性能以及占用相对较少的空间. 全局唯一ID在数据库中一般会被设成主键,这样为了保证数据插入时索引的快速 ...
- 集群高并发情况下如何保证分布式唯一全局ID生成
作者:轻狂书生 blog.csdn.net/LookForDream_/article/details/109355335 前言 系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问 ...
- 【283期】面试官问:高并发场景下,如何保证全局唯一分布式 ID 生成?
点击上方"Java精选",选择"设为星标" 别问别人为什么,多问自己凭什么! 下方有惊喜,留言必回,有问必答! 每一天进步一点点,是成功的开始... 前言 系统 ...
最新文章
- Java 集合——List集合
- Thread系列——Thread.Sleep(0)
- 反对人工智能的九条意见是什么?
- 【BZOJ1086】[SCOI2005]王室联邦 树分块
- Qt5布局管理(2)
- c strlen C++ strlen
- C++ leetcode 17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。
- php drive mssql,PHP 连接 MSSQL 2005/2008 以UTF8存取 并让ADODB支持的安装设置
- 重装php后网站无法,1、解决重装php后变量在下一个页面无法取到的问题:
- Nature 机器智能综述:AI如何自动生成游戏
- 软件测试管理工具禅道开源版下载安装
- vue-cli 使用Mint-UI
- Matlab中使用varargin来实现参数可变的函数
- 【得物技术】AB实验设计实现与分流算法
- db2 windows linux,Migrate DB2 v9 on windows to DB2 v10.5 on linux
- Lenovo Y50-70 1080p Hackintosh Catalina
- 小甲鱼第45课 魔术方法 简单定制
- 无聊猿宇宙之风进军国内市场会卷起巨浪吗?
- Win11系统组策略编辑器打不开解决方法
- 阿里云服务器托管-云服务器托管介绍
热门文章
- 判断xarray中小于0的位置坐标
- 安徽外国语学院计算机毕业大补考,学生缓考、补考及重修最终成绩计算办法
- bluetooth射频已关闭请打开bluetooth射频_投资笔记:5G之射频研究
- iOS【UI之QQ聊天布局_键盘通知实现自动弹出隐藏_自动回复】
- Linux内核中喂狗,m3352linux内核中看门狗喂狗和应用层喂狗方法
- Mac 终端提示You have not agreed to the Xcode license agreements
- 图片嵌入隐藏-大容量的信息隐藏算法
- anaconda3 mysql_Win10+Anaconda3+Eclipse+Django+MySQL 配置Python的Web开发环境
- 51信用卡的面试问题
- Golang学习(二十四)家庭记账项目