精华内容
下载资源
问答
  • java随机生成UUID

    2017-12-29 09:53:21
    public class IDGenerator { private static long num=0; /** * 随机生成UUID * @return */ public static synchronized String getUUID(){ UUID uuid=UUID.randomUUID(); String str
    public class IDGenerator {
        
      private static long num=0; 
        
      /**
       * 随机生成UUID
       * @return
       */
      public static synchronized String getUUID(){
        UUID uuid=UUID.randomUUID();
        String str = uuid.toString(); 
        String uuidStr=str.replace("-", "");
        return uuidStr;
      }
      /**
       * 根据字符串生成固定UUID
       * @param name
       * @return
       */
      public static synchronized String getUUID(String name){
        UUID uuid=UUID.nameUUIDFromBytes(name.getBytes());
        String str = uuid.toString(); 
        String uuidStr=str.replace("-", "");
        return uuidStr;
      }
      /**
       * 根据日期生成长整型id
       * @param args
       */
      public static synchronized long getLongId(){
        String date=DateUtil.getDate2FormatString(new Date(), "yyyyMMddHHmmssS");
        System.out.println("原始id="+date);
        if(num>=99) num=0l;
        ++num;
        if(num<10) {
          date=date+00+num;
        }else{
          date+=num;
        }
        return Long.valueOf(date);
      }
       
    }


    展开全文
  • java实现随机生成UUID

    2020-09-03 12:28:43
    主要介绍了java实现随机生成UUID的函数代码,有需要的小伙伴可以参考下。
  • I have a web based Java application that generates random UUIDs for session information. One of our testers is claiming up to 350ms to generate UUIDs based upon his own profiling, but I have not yet ....

    I have a web based Java application that generates random UUIDs for session information. One of our testers is claiming up to 350ms to generate UUIDs based upon his own profiling, but I have not yet been able to replicate his results. He points to this article http://www.cowtowncoder.com/blog/archives/2010/10/entry_429.html to help back up his results. I wanted to see if anyone else has ran into this limitation with Java's built-in UUID generation capability in either Java 6 or Java 7 applications.

    解决方案

    I tested it

    for (;;) {

    long t0 = System.currentTimeMillis();

    for (int i = 0; i < 1000000; i++) {

    UUID.randomUUID();

    }

    System.out.println(System.currentTimeMillis() - t0);

    }

    on my PC it is ~1100 ms, which is pretty slow. UUID.randomUUID() uses SecureRandom internally, to make it faster we can use regular java.util.Random

    Random r = new Random();

    for (;;) {

    ..

    new UUID(r.nextLong(), r.nextLong());

    it's ~80 ms

    展开全文
  • java生成随机UUID

    2019-10-11 16:13:27
    import java.util.UUID; String uuid = UUID.randomUUID().toString().replace("-", "").toLowerCase();

    import java.util.UUID;

    String uuid = UUID.randomUUID().toString().replace("-", "").toLowerCase();

    展开全文
  • java生成uuid_Java UUID

    千次阅读 2021-01-05 16:06:46
    java生成uuid介绍: UUID(通用唯一标识符)表示一个128位长的唯一值。 它也被普遍称为GUID(全球唯一标识符)。 UUID的标准表示形式由十六进制数字组成: 533a4559-e55c-18b3-8456-555563322002并具有36个字符,其中...
    java生成uuid

    java生成uuid

    介绍:

    UUID(通用唯一标识符)表示一个128位长的唯一值。 它也被普遍称为GUID(全球唯一标识符)。

    UUID的标准表示形式由十六进制数字组成:

    533a4559-e55c-18b3-8456-555563322002

    并具有36个字符,其中包括四个连字符'-'

    Java中的java.util.UUID类表示一个不变的UUID。

    我们可以使用UUID类来生成随机文件名,会话或事务ID。 UUID的另一种流行用法是在数据库中生成主键值。

    Java UUID类具有一种用于处理Leach-Salz变体(变体2)的方法。 但是,其构造函数允许生成任何类型的UUID

    new UUID(long mostSigBits, long leastSigBits)

    一个变体确定UUID的布局。 让我们来一个样本UUID

    533a4559-e55c-18b3-8456-555563322002
    xxxxxxxx-xxxx-Bxxx-Axxx-xxxxxxxxxxxx

    此处, A的值表示变量,并由其前三个MSB(最高有效位)确定:

    MSB1 MSB2 MSB3 变体 变体说明
    0 X X 0 保留用于NCS向后兼容
    1个0 X 2 里奇-萨尔茨
    1个1个0 6 保留,Microsoft Corporation向后兼容
    1个1个7 保留以供将来定义

    对于我们来说, A = 8(1000) ,因此前三个MSB100 。 这意味着我们的UUID具有2的变体。

    对于版本2 UUID ,有五个不同的版本:

    描述
    v1 基于时间的
    v2 DCE-安全
    v3和v5 基于名称
    v4 随机生成的UUID

    生成

    让我们介绍一下Java UUID类中的方法,这些方法可用于生成UUID

    1.

    使用加密强度高的伪随机数生成器生成v4伪随机UUID

    UUID uuid = UUID.randomUUID();

    2.

    我们可以使用nameUUIDFromBytes()从字节数组生成UUID

    byte[] byteArr = {11, 23, 33}; 
    UUID uuid = UUID.nameUUIDFromBytes(byteArr);

    此方法生成v3 UUID (基于名称)。

    3.

    使用fromString() ,我们可以从标准字符串表示形式创建UUID

    UUID uuid = UUID.fromString("533a4559-e55c-18b3-2456-555563322002");

    对于作为参数传入的任何无效字符串,它将引发IllegalArgumentException

    比较两个

    Java UUID类实现Comparable接口。 因此,我们可以使用compareTo()方法进行比较:

    UUID uuid1 = UUID.randomUUID();
    UUID uuid2 = UUID.randomUUID();
     
    int result = uuid1.compareTo(uuid2);

    众所周知, compareTo()方法返回:

    • 1:如果uuid1大于uuid2
    • 0:如果uuid1 = uuid2
    • -1:如果uuid1小于uuid2

    我们也可以选择使用equals()方法进行比较。

    其他方法:

    让我们介绍一下Java UUID类的其他一些方法:

    1.

    顾名思义, getLeastSignificantBits()getMostSignificantBits()分别返回64个最低有效位和64个最高有效位

    UUID uuid = UUID.randomUUID();
     
    long leastSignificantBits = uuid.getLeastSignificantBits();
    long mostSignificantBits = uuid.getMostSignificantBits();

    这两种方法都返回一个long值。

    2.

    我们还可以查询UUID的变体和版本

    UUID uuid = UUID.randomUUID();
     
    int variant = uuid.variant();
    int version = uuid.version();

    使用基于时间的

    让我们从在POM中java- uuid -generator添加一个依赖关系开始:

    <dependency>
        <groupId>com.fasterxml.uuid</groupId>
        <artifactId>java-uuid-generator</artifactId>
        <version>3.1.5</version>
    </dependency>

    请注意,该库提供了各种类型的UUID生成器。

    要创建基于时间的UUID ,我们将具有:

    UUID uuid = Generators.timeBasedGenerator().generate();

    处理v1 UUID时,方便使用的java.util包中的其他方法包括:

    1. timestamp():返回与给定的v1 UUID关联的时间戳值。 与任何其他类型的UUID一起使用时,此方法将引发UnsupportedOperationException

    2. clockSequence():它返回一个14位值,该值由给定UUID的时钟序列字段构成。 它还会为v1类型以外的UUID抛出UnsupportedOperationException

    结论:

    在本教程中,我们了解了什么是UUID及其变体。 我们讨论了变量类型2的不同可用版本。 我们还介绍了Java UUID类公开的许多方法。

    翻译自: https://www.javacodegeeks.com/2019/03/java-uuid.html

    java生成uuid

    展开全文
  • java 随机生成4位 UUID

    千次阅读 2018-11-15 18:22:25
    import java.util.UUID; /** * @描述: 随机四位uuid */ public class UUIDGenrateUtil { public static String[] chars = new String[] { "a", "b", "c", "d", "...
  • java生成UUID

    2020-10-10 11:49:56
    java生成UUID 1.生成UUID import cn.hutool.core.util.IdUtil; public class IdUtilTest{ public static void main(String[] args) { //获取随机UUID System.out.println(IdUtil.randomUUID()); //简化的UUID,...
  • java生成UUID

    千次阅读 2009-04-25 10:00:00
    GUID号称可以做到一台机器每秒产生10000000个GUID,则可以保证3240年不重复(不过只是概率意义上),不知哪位大侠有能力验证,或者...要随机生成一个UUID,只要用两行代码就可以了:String uuid = UUID.randonUUID().t
  • * UUID * * @return */ public static String uuid() { return UUID.randomUUID().toString().replace("-", ""); } /** * UUID+时间 * * @return */ public static String uuidDate() { ...
  • import java.io.*; import java.util.UUID; public class Uuid {  public static void main(String[]args){  File file=new File("uuid.txt");  if(!file.exists()){  try{  
  • java uuid生成Java UUID (Java UUID) Java UUID (Universally Unique Identifier) class is part of java.util package. Java UUID class represents an immutable universally unique identifier and represents...
  • 所以 JavaUUID 通常可用于以下地方: 随机生成的文件名; Java Web 应用程序的 sessionID; 数据库表的主键; 事务 ID(UUID 生成算法非常高效,每台计算机每秒高达 1000 万次)。 在 Java 中,就有一个叫 UUID ...
  • 利用java生成uuid

    千次阅读 2020-08-07 20:17:51
    在实际项目中,我们可能想生成一个随机的而且可以保证唯一的标识,比如在给图片命名时,这时就可以采用uuid生成随机字符串,这个随机字符串基本上是不会出现重复的。 什么是UUID uuid,就是 通用唯一识别码 的缩写...
  • Java生成UUID

    千次阅读 2017-11-20 16:48:05
    UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OSF) 的组织在分布式计算环境 (Distributed Computing Environment, DCE) ...
  • JAVA生成随机ID(UUID

    千次阅读 2018-07-12 09:01:05
    java生成随机的id,可以引入import java.util.UUID包,java代码如下:public static String getUUID() { UUID uuid = UUID.randomUUID(); String str = uuid.toString(); String uuidStr = str.replace("-...
  • Java's UUID class generates a random UUID. But this consists of alphabets and numbers. For some applications we need only numbers. Is there a way to generate random UUID that consists of only numbers ...
  • Java 生成 UUID

    2017-08-29 10:13:12
    算法的核心思想是结合机器的网卡、当地时间、一个随机数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复。 阅读目录 1.UUID 简介2.UUID 组成3.项目实战 ...
  •  要在Java生成UUID,我们可以使用 java.util.UUID 类。 这个类是在 JDK1.5 中引入的。 UUID.randomUUID() 方法返回一个 UUID 对象。要获得生成的随机字符串的值,需要调用对象的 UUID.toString() 方法 ...
  • Java中快速生成UUID

    2021-09-16 16:20:36
    一、ID生成器工具类实例代码 /** * 功能: ID生成器工具类实例代码 * * @author CHY */ public class IdUtilsTest { public static void main(String[] args... System.out.println("获取随机UUID:"+randomUUID)
  • java uuid 随机生成唯一序列号

    千次阅读 2013-10-11 14:43:00
    UUID(Universally Unique Identifier)全局唯一标识符,是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。按照开放软件基金会(OSF)制定的标 准计算,用到了以太网卡地址、纳秒级时间、芯片ID码...
  • UUID随机生成

    2020-12-24 13:50:32
    UUID随机生成Java生成UUID随机值 生成UUID随机值 public static String getNoce(){ // String[] array = “0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz”.split(","); String[] chars ={“0...
  • GUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、...UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的ID: package com.mytest; import java.ut

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,108
精华内容 6,443
关键字:

java随机生成uuid

java 订阅