关闭

Java生成UUID通用唯一识别码

发表于:2009-12-15 10:12

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:51Testing软件测试网采编

#
java

  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的例子:

  view plaincopy to clipboardprint?
  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, + 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]);
  }
  }
  }
  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, + 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]);
  }
  }
  }

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号