JAVA中生成主键 ID 的常用方法

在 Java 中,生成主键 ID 的常用方法有:

  1. 使用 UUID(Universally Unique Identifier)生成唯一标识符,UUID 是由 16 字节组成的 128 位数字,通常以 32 个十六进制数字表示。使用 UUID.randomUUID() 方法可以生成一个随机的 UUID。
java 复制代码
import java.util.UUID;

String uniqueID = UUID.randomUUID().toString();
System.out.println("UUID: " + uniqueID);
  1. 使用 Snowflake 算法生成分布式唯一 ID,Snowflake 算法是 Twitter 开源的一种分布式 ID 生成算法,可以生成不重复且有序的 ID。
java 复制代码
import com.fasterxml.uuid.EthernetAddress;
import com.fasterxml.uuid.Generators;
import com.fasterxml.uuid.impl.TimeBasedGenerator;

// 需要添加依赖 com.fasterxml.uuid:java-uuid-generator
EthernetAddress address = EthernetAddress.fromInterface();
TimeBasedGenerator generator = Generators.timeBasedGenerator(address);
UUID uuid = generator.generate();
System.out.println("Snowflake ID: " + uuid.toString());
  1. 使用数据库自增字段,通过数据库的自增字段来生成主键 ID。

  2. 使用第三方库,如 Apache Commons 的 IdUtil 类来生成随机 ID。

java 复制代码
import org.apache.commons.lang3.RandomStringUtils;

// 需要添加依赖 org.apache.commons:commons-lang3
String randomID = RandomStringUtils.randomAlphanumeric(10);
System.out.println("Random ID: " + randomID);

以上是几种常用的生成主键 ID 的方法,你可以根据具体需求选择适合的方法。

相关推荐
学长毕设3 小时前
基于SpringBoot的实验室资产管理系统
java·spring boot·后端
C^h3 小时前
c++ string
开发语言·c++
raindayinrain3 小时前
c++高性能--原子操作,无锁编程,操作顺序
开发语言·c++·性能优化
学逆向的3 小时前
C++ 合并命名空间
开发语言·c++·网络安全
Zhao-Jichao3 小时前
VS2026 打包 C++ 程序生成 EXE,借助 Installer Project 扩展工具
开发语言·c++
zzu123zsw4 小时前
从臃肿的模板调用到声明式契约:深入 UniHttp 动态代理与多渠道生命周期扩展
java·spring boot·microsoft·unihttp
学逆向的4 小时前
C 局部静态变量
c语言·开发语言·网络安全
大都督会赢的5 小时前
C++第一节课
开发语言·c++
“AI国潮设计-小江”5 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计
开发语言·人工智能·python·prompt·aigc
源码集结号5 小时前
云诊所门诊系统源码,基于SpringBoot+Vue.js架构,支持多租户设计与Docker容器化部署
java·spring boot·源码·医院信息系统·门诊系统·诊所系统