博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java中生成唯一的ID
阅读量:6552 次
发布时间:2019-06-24

本文共 2667 字,大约阅读时间需要 8 分钟。

hot3.png

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

package com.cn.str;            import java.util.UUID;            /**      * Create GUID      * @author Administrator      *      */      public class CreateGUID {                    public static final String GenerateGUID(){              UUID uuid = UUID.randomUUID();              return uuid.toString();               }                /**          * @param args          */          public static void main(String[] args) {              // TODO Auto-generated method stub              System.out.println(GenerateGUID());                }            }

UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的ID

package test;            import java.util.UUID;            public class UUIDGenerator {          public UUIDGenerator() {          }                public static String getUUID() {              UUID uuid = UUID.randomUUID();              String str = uuid.toString();              // 去掉"-"符号              String temp = str.substring(0, 8) + str.substring(9, 13) + str.substring(14, 18) + str.substring(19, 23) + str.substring(24);              return str+","+temp;          }          //获得指定数量的UUID          public static String[] getUUID(int number) {              if (number < 1) {                  return null;              }              String[] ss = new String[number];              for (int i = 0; i < number; i++) {                  ss[i] = getUUID();              }              return ss;          }                public static void main(String[] args) {              String[] ss = getUUID(10);              for (int i = 0; i < ss.length; i++) {                  System.out.println("ss["+i+"]====="+ss[i]);              }          }      }
输出如下:
ss[0]=====4cdbc040-657a-4847-b266-7e31d9e2c3d9,4cdbc040657a4847b2667e31d9e2c3d9      ss[1]=====72297c88-4260-4c05-9b05-d28bfb11d10b,72297c8842604c059b05d28bfb11d10b      ss[2]=====6d513b6a-69bd-4f79-b94c-d65fc841ea95,6d513b6a69bd4f79b94cd65fc841ea95      ss[3]=====d897a7d3-87a3-4e38-9e0b-71013a6dbe4c,d897a7d387a34e389e0b71013a6dbe4c      ss[4]=====5709f0ba-31e3-42bd-a28d-03485b257c94,5709f0ba31e342bda28d03485b257c94      ss[5]=====530fbb8c-eec9-48d1-ae1b-5f792daf09f3,530fbb8ceec948d1ae1b5f792daf09f3      ss[6]=====4bf07297-65b2-45ca-b905-6fc6f2f39158,4bf0729765b245cab9056fc6f2f39158      ss[7]=====6e5a0e85-b4a0-485f-be54-a758115317e1,6e5a0e85b4a0485fbe54a758115317e1      ss[8]=====245accec-3c12-4642-967f-e476cef558c4,245accec3c124642967fe476cef558c4      ss[9]=====ddd4b5a9-fecd-446c-bd78-63b70bb500a1,ddd4b5a9fecd446cbd7863b70bb500a1

转载于:https://my.oschina.net/luanxuedong2010/blog/120753

你可能感兴趣的文章
JavaScript语言精髓(1)之语法概要拾遗(转)
查看>>
类的多态性
查看>>
hadoop stop-dfs.sh 无法停止 namenode datanode
查看>>
学习邹欣著的《构建之法,现代软件工程》 ,所得疑问。
查看>>
MapReduce的编程思想(1)
查看>>
使用批处理文件设置环境变量
查看>>
自己动手写一个简单的Windows shell扩展程序
查看>>
NoCache
查看>>
算法与数据结构学习
查看>>
springboot应用无故停止运行killed解决方法
查看>>
在自己的应用中启动另外一个应用,随便说一下,发现一个秘密,就是当应用没退出的时候,启动就会变成关闭!!!...
查看>>
NetAdvantage 笔记
查看>>
Apache Maven 入门
查看>>
[转] B树、B-树、B+树、B*树 知识详解
查看>>
int.NSInteger.NSUInteger.NSNumber的区别
查看>>
使用JS与CSS3的翻转实现3D翻牌效果
查看>>
上海期货交易所CTP行情和交易接入
查看>>
Django models 操作高级补充
查看>>
springClould 的一些组件
查看>>
验证码
查看>>