hutool IdUtil
所属分类 hutool
浏览量 92
https://doc.hutool.cn/pages/IdUtil
cn.hutool.core.util.IdUtil
// 随机UUID
System.out.println(IdUtil.randomUUID());
// UUID 去掉横线
System.out.println(IdUtil.simpleUUID());
// 使用性能更好的ThreadLocalRandom生成UUID
System.out.println(IdUtil.fastUUID());
System.out.println(IdUtil.fastSimpleUUID());
// MongoDB ID
System.out.println(IdUtil.objectId());
System.out.println(IdUtil.getSnowflake().nextId());
System.out.println(IdUtil.getSnowflake().nextIdStr());
// NanoId,一个小型、安全、对 URL友好的唯一字符串 ID 生成器
System.out.println(IdUtil.nanoId());
bf9b7185-a22a-447f-915e-33b5f781a7e6
1cd5bc8766464cfb8bbc58d39a799a8e
e09ee6e8-cbbd-4261-baa2-c3693eef0fbf
97b44097bd804ed58c9383d4e6f7a20a
66c58aabf132ed0863100ed0
1826146062168113152
1826146062168113153
zDw1Mfd9XmOWI-hCqdlNw
MongoDB ObjectId 组成
1. Time 时间戳
2. Machine 所在主机的唯一标识符,一般是机器主机名的散列值
3. PID 进程ID
4. INC 自增计数器
NanoId,一个小型、安全、对 URL友好的唯一字符串 ID 生成器,特点:
安全:它使用加密、强大的随机 API,并保证符号的正确分配
体积小:只有 258 bytes 大小(压缩后)、无依赖
紧凑:它使用比 UUID (A-Za-z0-9_~)更多的符号
此实现的逻辑基于JavaScript的NanoId实现,见:https://github.com/ai/nanoid
https://gitee.com/dyyx/work2024/blob/master/demo/hutooldemo/src/main/java/util/IdUtilDemo.java
上一篇
下一篇
每日一曲合集
握笔姿势的重要性
Spring Security 和 Shiro
hutool 加密解密工具 SecureUtil
Java开源加密库 Bouncy Castle BC库
国密算法