GUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随即数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复。UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的ID。

  UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OSF) 的组织在分布式计算环境 (Distributed Computing Environment, DCE) 领域的一部份。UUID 的目的,是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的 UUID。在这样的情况下,就不需考虑数据库建立时的名称重复问题。目前最广泛应用的 UUID,即是微软的 Microsoft's Globally Unique Identifiers (GUIDs),而其他重要的应用,则有 Linux ext2/ext3 档案系统、LUKS 加密分割区、GNOME、KDE、Mac OS X 等等。

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

  代码如下:

public static void main(String[] args) {
//生成唯一id
String id= UUID.randomUUID().toString();
//替换uuid中的"-"
id=id.replace("-", "");
System.out.println(id);
}

  

用java生成32位全球唯一的id编号的更多相关文章

  1. java生成32位UUID

    java生成32位UUID,具体代码如下: package com.fxsen.uuid; import java.util.UUID; /** * Copyright: Copyright (c) ...

  2. Java 生成 32位 UUID

    UUID:Universally Unique Identifier 通用唯一识别码 现在很多数据库的主键id,由原来的int自增,改为 UUID 表示.因为 UUID 本身不可能重复,线程安全,完美 ...

  3. java 生成20位唯一ID,生成不会重复的20位数字----https://blog.csdn.net/weixin_36751895/article/details/70331781

    java 生成20位唯一ID,生成不会重复的20位数字----https://blog.csdn.net/weixin_36751895/article/details/70331781

  4. 【Java】 生成32位随机字符编号

    /** * 生成32位编码 * @return string */ public static String getUUID(){ String uuid = UUID.randomUUID().to ...

  5. java生成唯一的id编号

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

  6. java MD5 32位加密

    import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class MD5 ...

  7. java生成32的md5签名串

    import java.security.MessageDigest; import lombok.extern.slf4j.Slf4j; /** * 签名帮助类 * * @author yangzl ...

  8. 编写生成32位大写和小写字符的md5的函数

    package nicetime.com.practise; import java.security.MessageDigest; /** * MD5加密是JAVA应用中常见的算法,请写出两个MD5 ...

  9. 在线生成32位和16位大小写MD5密文

    MD5是一种不可逆的加密算法,全称是Message-Digest Algorithm 5(信息-摘要算法).是当前计算机领域用于确保信息传输完整一致而广泛使用的散列算法之一. MD5的典型应用是对一段 ...

随机推荐

  1. laravel5.8笔记五:基类控制器和基类模型

    建立基类的目的就是为了方便继承.比如:Admin模块访问,是否登陆.检测登陆可以写到基类里面 控制器基类 原始基类:app\Http\Controllers\Controller.php,我们下面要做 ...

  2. Cesium高度解析

    var viewer = new Cesium.Viewer('cesiumContainer', { shadows : true }); //为true时,球体会有高程遮挡效果(在没有地形时候也会 ...

  3. 股票配资源码系统APP股票配资系统PC版配资系统

    股票配资策略系统一套,pc+wap双端,封装app! 需要服务器环境: LNMP/LAMP ,域名,短信服务,IOS端APP需要企业签名发布,或者有金融行业资质到APPstore发布 产品介绍: 全套 ...

  4. Scala 中方法扩展实践

    前言 这个名字不知道取得是否合适,简单来说要干的事情就是给某个类型添加一些扩展方法,此场景在各种语言中都会用到,比如 C# 语言,如果我们使用一个别人写好的类库,而又想给某个类库添加一些自己封装的方法 ...

  5. sql脚本练习

    多写sql语句,才能对数据库操作更加熟练. create database springbootdemo; use springbootdemo; create table user; // 这个脚本 ...

  6. Nestjs 缓存

    Docs: https://docs.nestjs.com/techniques/caching yarn add @nestjs/mongoose mongoose yarn add cache-m ...

  7. 45道sql

    一.设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表(四)所示,数据如表1-2 ...

  8. js读取解析JSON类型数据【申明:来源于网络】

    js读取解析JSON类型数据[申明:来源于网络] 地址:http://blog.csdn.net/sunhuaqiang1/article/details/47026841

  9. MIP是什么

    MIP (Mobile Instant Pages - 移动网页加速器), 是一套应用于移动网页的开放性技术标准.通过提供MIP-HTML规范.MIP-JS运行环境以及MIP-Cache页面缓存系统, ...

  10. .NET Core 的 Span<T> 学习与使用笔记

    一.阅读材料 All About Span: Exploring a New .NET Mainstay Span<T> - byte to int conversions Span< ...