数据库主键UUID,GUID和自己写的工具类
2017-04-18 17:30
155 查看
GUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随即数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复。
UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的ID,用法如下:
使用UUID生成主键的方法:http://www.cnblogs.com/LeoBoy/p/5806529.html
这里写一个自己用的方法:
UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的ID,用法如下:
UUID uuid = UUID.randomUUID(); System.out.println(uuid);
使用UUID生成主键的方法:http://www.cnblogs.com/LeoBoy/p/5806529.html
这里写一个自己用的方法:
/*** * 获取年月日时分秒毫秒等共32位字符串 * @return */ public static String generator(){ StringBuffer now = new StringBuffer(new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date())); if(sortCode>99990){ sortCode=10000; }else{ sortCode++; } int b = (int)(Math.random() * 90000.0D + 10000.0D); int c = (int)(Math.random() * 90000.0D + 10000.0D); return (now.append(sortCode).append(b).append(c)).toString(); } /*** * 获取年月日时分秒毫秒等共17位字符串 * @return */ public static String generatorShort(){ StringBuffer now = new StringBuffer(new SimpleDateFormat("yyMMddHHmmssSSS").format(new Date())); if(shortSortCode>99){ shortSortCode=0; }else{ shortSortCode++; } if(shortSortCode>9){ return (now.append(shortSortCode)).toString(); }else{ return (now.append(0).append(shortSortCode)).toString(); } }
相关文章推荐
- 微软的COM中GUID和UUID、CLSID、IID
- OKhttp封装的工具类 可以拷到自己项目中直接用
- C++:在程序中获取全球唯一标识号(GUID或UUID)
- UUID 、GUID、COMB 的区别与联系
- 开发自己的框架——(二)数据库工具类的封装
- 数据库主键到底是用自增长(INT)好还是UUID好
- 关于UUID,GUID,OCMB
- iOS 生成 UUID(GUID)
- 写一个自己的MD5加密工具类
- 随机生成UUID(GUID)的方法
- 自己写的一个SP工具类
- 写自己的数组工具类
- 管理自己的日志工具类
- COM中GUID和UUID、CLSID、IID
- UUID和GUID
- Java,Javascript,Oracle开发生成UUID或GUID方法总结
- (原创)分享自己写的几个工具类(五)时间计算工具类
- 利用Java.util.UUID来生成唯一ID(用来做数据库主键好用)
- 给 TI BLE 添加自己UUID
- 跨平台生成GUID/UUID