JAVA工具类 UUID
UUID:通用惟一识别:Universally Unique Identifier; 在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。
GUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随即数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复。
UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的ID
package com.mytest;
import java.util.UUID;
public class UTest {
    public
static void main(String[] args) {
       
UUID uuid = UUID.randomUUID();
       
System.out.println(uuid);
    }
}
运行结果是:33efddeb-9b73-49eb-9d59-02c10aa7be9d      
(每一时刻结果都不会一样)
UUID(Universally Unique Identifier)
全局唯一标识符,是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。按照开放软件基金会(OSF)制定的标准计算,用到了以太网卡
地址、纳秒级时间、芯片ID码和许多可能的数字。由以下几部分的组合:当前日期和时间(UUID的第一个部分与时间有关,如果你在生成一个UUID之后,
过几秒又生成一个UUID,则第一个部分不同,其余相同),时钟序列,全局唯一的IEEE机器识别号(如果有网卡,从网卡获得,没有网卡以其他方式获
得),UUID的唯一缺陷在于生成的结果串会比较长。
JDK1.5 
如果使用的JDK1.5的话,那么生成UUID变成了一件简单的事,以为JDK实现了UUID:
java.util.UUID,直接调用即可.
1、UUID uuid = UUID.randomUUID();
2、String s = UUID.randomUUID().toString();//用来生成数据库的主键id非常不错。。
如果你嫌字段太长可以使用字符串截断:
    
3、 UUID uuid = UUID.randomUUID();
   
  uuid.toString().replaceAll("-", "").substring(0,
6);//这里是截取六位
####其中2和3很适合用来生成数据库的主键
UUID是由一个十六位的数字组成,表现出来的形式例如
550E8400-E29B-11D4-A716-446655440000
JAVA工具类 UUID的更多相关文章
- Java工具类——UUIDUtils
		
借用一下百度百科的解释,来看一下UUID是什么. UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Ope ...
 - java工具类系列 (四.SerializationUtils)
		
java工具类系列 (四.SerializationUtils) SerializationUtils该类为序列化工具类,也是lang包下的工具,主要用于序列化操作 import java.io.Se ...
 - Java工具类——通过配置XML验证Map
		
Java工具类--通过配置XML验证Map 背景 在JavaWeb项目中,接收前端过来的参数时通常是使用我们的实体类进行接收的.但是呢,我们不能去决定已经搭建好的框架是怎么样的,在我接触的框架中有一种 ...
 - 排名前 16 的 Java 工具类
		
在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...
 - 排名前16的Java工具类
		
原文:https://www.jianshu.com/p/9e937d178203 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法 ...
 - 第一章 Java工具类目录
		
在这一系列博客中,主要是记录在实际开发中会常用的一些Java工具类,方便后续开发中使用. 以下的目录会随着后边具体工具类的添加而改变. 浮点数精确计算 第二章 Java浮点数精确计算 crc32将任意 ...
 - java工具类之按对象中某属性排序
		
import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang ...
 - 干货:排名前16的Java工具类
		
在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...
 - Java工具类:给程序增加版权信息
		
我们九天鸟的p2p网贷系统,基本算是开发完成了. 现在,想给后端的Java代码,增加版权信息. 手动去copy-paste,太没有技术含量. 于是,写了个Java工具类,给Java源文件 ...
 
随机推荐
- SDK里报错[NSConcreteMutableData wbsdk_base64EncodedString]
			
百度一大堆都说在这个里加个-ObjC,然后加了还是有问题 最近谷歌了下才要加入这个才正常了,国内的开发者只是一知半解的………… 如果错误还没有解决, 下面这个可以帮到你:
 - PASCAL 的开源工具
			
PASCAL 的开源工具: 1)free pascal 代码编译器 http://www.freepascal.org/ 2)lazarus 图形界面开发工具 http://www.la ...
 - JS的join方法
			
join() 方法用于把数组中的所有元素放入一个字符串. 元素是通过指定的分隔符进行分隔的. 例子 1 在本例中,我们将创建一个数组,然后把它的所有元素放入一个字符串: <script type ...
 - ELK集群模式部署
			
架构拓扑图为: 准备工作: 下载资源包: Elasticsearch: wget https://artifacts.elastic.co/downloads/elasticsearch/elasti ...
 - CorelDRAW和Illustrator比较, 9 CorelDRAW Graphics Alternatives
			
至于要不要学Illustrator,完全凭个人意愿.如果你精通Coreldraw,学不学都一样.因为二者几乎可以完全替代. CDR:是一个纯图形设计软件.排版比其他二个软件好用. 一般来讲CDR更适合 ...
 - 关于TagHelper的那些事情——TagHelper的基本知识
			
概要 TagHelper是ASP.NET 5的一个新特性.也许在你还没有听说过它的时候, 它已经在技术人员之间引起了大量讨论,甚至有一部分称它为服务器控件的回归.实际上它只不过是一个简化版本,把HTM ...
 - centos7 安装selenium和firefox
			
之前有一篇文章介绍过在ubuntu下安装selenium和firefox 现在介绍下centos7 注意以下都是下载的linux64位的软件,32位的请自己找下链接, 现在使用的python的版本是3 ...
 - Tile based Rendering //后面一段是手机优化建议
			
https://www.imgtec.com/blog/a-look-at-the-powervr-graphics-architecture-tile-based-rendering/ 一种硬件结构 ...
 - python 如何调用子文件下的模块
			
在python开发中,经常会出现调用子文件夹下的py模块 如上图,如果在test.py文件中,要调用meeting文件夹下面的huodongshu.py 模块, 直接在test.py 中 import ...
 - 【Python】解决Django Admin管理界面样式表(CSS Style)丢失问题
			
配置Django Admin,关于如何启用请参考Django官方文档<Activate the admin site>.但是我在配置过程中登录http://example.com/admi ...