在java中生成唯一ID的最佳方法

2023-12-03

在java中生成唯一ID的最佳方法是什么?人们一般使用

String id = System.currentTimeMillis+ someStaticCounter;

但这种方法需要在多线程应用程序中进行同步。

我在用

try 
{
   Thread.sleep(1); 
  //This sleep ensures that two consecutive calls from the same thread does not return the same id.
}
catch (InterruptedException e)
{
 // do nothing;
}
id = System.currentTimeMillis() + "-" + Thread.currentThread().getId();

这种方法可以帮助我减少同步开销。

请问有更好的方法吗?


UUID 怎么样:http://java.sun.com/j2se/1.5.0/docs/api/java/util/UUID.html#randomUUID%28%29

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在java中生成唯一ID的最佳方法 的相关文章

  • 使用 JDBC 获取 Oracle 11g 的最后插入 ID

    我是使用 Oracle 的新手 所以我将放弃之前已经回答过的内容这个问题 https stackoverflow com questions 3131064 get id of last inserted record in oracle
  • Android 中的列表(特别是 RecyclerView 和 CardView)如何工作

    请原谅我问这个问题 但我是 Android 开发新手 尽管我正在尝试了解developer android com 网站上的基础知识 但大多数示例 即使他们说它们是为 Android Studio 构建的 尚未设置为使用 Gradle 因此
  • Base36 编码字符串?

    我一直在网上查找 但找不到解决此问题的方法 在 Python Ruby 或 Java 中 如何对以下字符串进行 Base 36 编码 nOrG9Eh0uyeilM8Nnu5pTywj3935kW 5 Ruby 以 36 为基数 s unpa
  • 如何使用 JAVA 代码以编程方式捕获线程转储?

    我想通过 java 代码生成线程转储 我尝试使用 ThreadMXBean 为此 但我没有以正确的格式获得线程转储 因为我们正在使用jstack命令 请任何人提供一些帮助 他们是否有其他方式获取线程转储 使用任何其他 API 我想要的线程转
  • 您建议使用哪种压缩(GZIP 是最流行的)servlet 过滤器?

    我正在寻找一个用于大容量网络应用程序的 GZIP servlet 过滤器 我不想使用容器特定的选项 要求 能够压缩响应负载 XML Faster 已在大批量应用的生产中得到验证 应适当设置适当内容编码 跨容器移植 可选择解压缩请求 谢谢 我
  • FileNotFoundException - Struts2 文件上传

    Strange FileNotFoundException使用Struts2上传文件时 这是 JSP 的一部分
  • Java中的断点和逐步调试?

    抱歉我的问题名称很奇怪 我不知道如何寻找这个 因为我不知道这些东西是如何称呼的 Visual Studio 中至少有一个功能 您可以单击代码左侧并设置一个大红点的起点 然后运行程序 您可以通过按 f8 或 f5 实际上是不同的 f 来跟踪步
  • 如何使用正则表达式验证 1-99 范围?

    我需要验证一些用户输入 以确保输入的数字在 1 99 范围内 含 这些必须是整数 Integer 值 允许前面加 0 但可选 有效值 1 01 10 99 09 无效值 0 007 100 10 5 010 到目前为止 我已经制定了以下正则
  • 当 minifyEnabled 为 true 时 Android 应用程序崩溃

    我正在使用多模块应用程序 并且该应用程序崩溃时minifyEnabled true in the installed模块的build gradle 以下是从游戏控制台检索到的反混淆堆栈跟踪 FATAL EXCEPTION Controlle
  • Java、Spring:使用 Mockito 测试 DAO 的 DataAccessException

    我正在尝试增加测试覆盖率 所以我想知道 您将如何测试 DAO 中抛出的 DataAccessExceptions 例如在一个简单的 findAll 方法中 该方法仅返回数据源中的所有数据 就我而言 我使用 Spring JdbcTempla
  • Java:如何确定文件所在的驱动器类型?

    Java 是否有一种独立于平台的方法来检测文件所在的驱动器类型 基本上我有兴趣区分 硬盘 可移动驱动器 如 USB 记忆棒 和网络共享 JNI JNA 解决方案不会有帮助 可以假设 Java 7 您可以使用 Java 执行 cmd fsut
  • 我们如何测试包私有类?

    我正在看书Effective Java in Item 13 Minimize the accessibility of classes and members 它提到 为了方便测试 您可能想让类 接口或成员更易于访问 这在某种程度上是好的
  • 无法在 Java/Apache HttpClient 中处理带有垂直/管道栏的 url

    例如 如果我想处理这个网址 post new HttpPost http testurl com lists lprocess action LoadList 401814 1 Java Apache 不允许我这么做 因为它说竖线 是非法的
  • JAVA中遍历JSON数据

    我是 JSON 新手 我使用 HTTPUrlConnections 并在 JAVA 程序中获得一些响应 响应数据将类似于 data id 1 userId 1 name ABC modified 2014 12 04 created 201
  • 我可以限制分布式应用程序发出的请求吗?

    我的应用程序发出 Web 服务请求 提供商处理的请求有最大速率 因此我需要限制它们 当应用程序在单个服务器上运行时 我曾经在应用程序级别执行此操作 一个对象跟踪到目前为止已发出的请求数量 并在当前请求超出允许的最大负载时等待 现在 我们正在
  • Hadoop NoSuchMethodError apache.commons.cli

    我在用着hadoop 2 7 2我用 IntelliJ 做了一个 MapReduce 工作 在我的工作中 我正在使用apache commons cli 1 3 1我把库放在罐子里 当我在 Hadoop 集群上使用 MapReduceJob
  • 替换文件中的字符串

    我正在寻找一种方法来替换文件中的字符串而不将整个文件读入内存 通常我会使用 Reader 和 Writer 即如下所示 public static void replace String oldstring String newstring
  • 记录类名、方法名和行号的性能影响

    我正在我的 java 应用程序中实现日志记录 以便我可以调试应用程序投入生产后可能出现的潜在问题 考虑到在这种情况下 人们不会奢侈地使用 IDE 开发工具 以调试模式运行事物或单步执行完整代码 因此在每条消息中记录类名 方法名和行号将非常有
  • ArrayList.clear() 和 ArrayList.removeAll() 有什么区别?

    假如说arraylist定义为ArrayList
  • 将对象从手机共享到 Android Wear

    我创建了一个应用程序 在此应用程序中 您拥有包含 2 个字符串 姓名和年龄 和一个位图 头像 的对象 所有内容都保存到 sqlite 数据库中 现在我希望可以在我的智能手表上访问这些对象 所以我想实现的是你可以去启动 启动应用程序并向左和向

随机推荐

  • Socket_read() 说“不是有效的资源”

    我正在学习套接字编程并尝试使用 php 我想使用客户端连接到套接字服务器并从客户端读取服务器的响应 代码 服务器 php address 127 0 0 1 port 3343 echo I am here set time limit 0
  • 将枚举列表传递给条件

    我有域名 付款 class Payment String name PaymentType paymentType PaymentType 是一个 ENUM 搜索特定付款类型的所有付款很简单 def results Payment crea
  • 单成员结构的灵气属性传播问题

    我遇到了 Spirit Qi 的编译问题 它抱怨说值类型不是以下成员标识符 由于某种原因 Qi 的属性系统将标识符视为容器类型 并尝试枚举它的值类型 这是一个类似的问题这个问题 但是 我相信原因是单个成员结构和may与此有关bug incl
  • 如何为应用程序的容器使用相同的凭证处理程序配置来生成新的密码哈希值?

    我的 Web 应用程序的上下文定义类似于
  • php 文本中最常用的单词

    我在 stackoverflow 上找到了下面的代码 它可以很好地查找字符串中最常见的单词 但我可以排除对 a if you have 等 等常用词的计数吗 或者我必须在计数后删除元素吗 我该怎么做 提前致谢
  • Android BLE 血糖通知

    我厌倦了使用 Android BLE SDK 与我的 Glucose 设备进行通信 我需要 UUID 2a18 和 2a34 的 setCharacteristicNotification 我参考Android官方SDK如下 http de
  • 错误:[Dagger/MissingBinding] Map、Provider>

    我有 Dagger MissingBinding 的问题 我在 stackoverflow 上红色了所有相关答案 我尝试使用不同版本的 kotlin gradle dagger 我尝试使用不同的解决方法 例如kapt correctErro
  • Crystal Reports:数据库登录失败

    我在 ASP NET C 中有一个应用程序 其中使用 Sap Crystal Reports for Visual Studio 在 VS 中一切都很完美 但是当我将其部署到 IIS 时 出现 数据库登录失败 错误 当我设置 Crystal
  • Access 中的 SELECT @@IDENTITY 始终返回 0

    我一直在努力寻找解决这个问题的方法 但到目前为止没有任何效果 private void Insert string ConnectionStringAccess Provider Microsoft ACE OLEDB 12 0 Data
  • 跨页面发布

    我只是尝试跨页面发布的示例 我已添加 1 个文本框和 1 个按钮到 default aspx 页面
  • 强制下线所有在线用户中的特定用户

    在我的网站管理员可以查看所有其他在线用户的列表 管理员还可以禁用该列表中的任何帐户 到目前为止一切都很顺利 但现在我决定注销被禁用的用户 如何对上述指定在线用户列表中的特定用户进行注销操作 注意 我对 SQL Server 数据库使用默认成
  • jQuery:获取表中的所有输入值并序列化

    给定以下表结构 当 button被点击了 table tr td td tr table
  • GMail fsockopen():Codeigniter 和 XAMPP 的 SSL 操作失败错误

    错误消息 1 消息 fsockopen SSL 操作失败 代码为 1 OpenSSL 错误消息 错误 14090086 SSL 例程 ssl3 get server certificate 证书验证失败 文件名 库 Email php 线路
  • 如何阻止 r devtools::check() 注意到 .DS_Store

    每次我跑步devtools check 在我的包裹上有一条注释 gt checking for non standard things in the check directory NOTE Found the following file
  • 表格输出 JavaScript 打印不正确

    我正在开发一个项目 该项目将根据当前余额 利率和每月还款确定还清信用卡的时间和支付的利息 我已经能够让我的代码为我提供正确的余额 利息和最低还款额 一直到显示的最后几行 我在让我的表执行正确的输出时遇到了一些麻烦 我尝试过改变一些东西 但它
  • 如何在shell脚本中使用加密和解密的密码

    我正在编写一个 shell 脚本 它执行需要密码的命令 我无法在脚本中以纯文本形式输入密码 我读到了 openssl 加密解密机制 但为了再次加密文件 我需要一个密码 我又无法将其放入脚本中 我不知道让脚本使用安全密码执行命令的最佳方法是什
  • 如何使用 Trollop 制作 Ruby 脚本进行命令行解析? [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我最近开始使用Trollop 一个干净而优雅的命令行选项解析器 适用于我所有基于 Ruby 的小型命令行 hack 我发现它确实很容易使用 但入门很困难 尽管有很好的在线文档 但
  • 如何通过python使用gensim的word2vec模型计算句子相似度

    根据Gensim Word2Vec 我可以使用gensim包中的word2vec模型来计算2个单词之间的相似度 e g trained model similarity woman man 0 73723527 然而 word2vec 模型
  • CSS 中的媒体片段 URI 替代方案?

    因此 我希望使用 Sprite Sheet 在 CSS 中制作背景图像 澄清一下 不 我不会去这个效果 我有一个完整的精灵表 我想在该表上取一个 16px x 16px 的正方形 并将其设置为将重复的背景 在未来的某个时候 我希望能够通过在
  • 在java中生成唯一ID的最佳方法

    在java中生成唯一ID的最佳方法是什么 人们一般使用 String id System currentTimeMillis someStaticCounter 但这种方法需要在多线程应用程序中进行同步 我在用 try Thread sle