【发布时间】:2016-05-06 20:26:55
【问题描述】:
我正在尝试生成从 0 开始的唯一自动增量 ID。
我发现使用以下代码可以做到这一点:
private static final AtomicInteger count = new AtomicInteger(0);
uniqueID = count.incrementAndGet();
我可以手动创建自动增量 ID:
例如:
int i = 0; // Obviously I will declare this variable as global
++i;
通过这种方式,我可以做到这一点。但我不想手动执行此操作。我正在寻找一些可以处理所有这些东西的 java 方法。
我发现下面的代码:
private static final AtomicInteger count = new AtomicInteger(0);
uniqueID = count.incrementAndGet();
现在我的问题是,这是生成唯一 ID 的正确方法吗?或者,还有其他更好的解决方案吗?
【问题讨论】:
-
这仅适用于单进程环境。
-
这将仅在单个 JVM 运行中是唯一的。重新启动程序时再次从 0 开始。在不同的机器上不会是唯一的。
-
有什么要求?身份证怎么用?它会被共享/持久化吗?是可猜测的问题吗?
-
没有更多的要求,不清楚你到底在问什么。
标签: java