Package org.aoju.bus.core.key
Class NanoId
java.lang.Object
org.aoju.bus.core.key.NanoId
NanoId,一个小型、安全、对 URL友好的唯一字符串 ID 生成器,特点:
- 安全:它使用加密、强大的随机 API,并保证符号的正确分配
- 体积小:只有 258 bytes 大小(压缩后)、无依赖
- 紧凑:它使用比 UUID (A-Za-z0-9_~)更多的符号
此实现的逻辑基于JavaScript的NanoId实现,见:https://github.com/ai/nanoid
- Since:
- Java 17+
- Author:
- David Klebanoff, Kimi Liu
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic String生成伪随机的NanoId字符串,长度为默认的DEFAULT_SIZE,使用密码安全的伪随机生成器static StringrandomNanoId(int size) 生成伪随机的NanoId字符串static StringrandomNanoId(Random random, char[] alphabet, int size) 生成伪随机的NanoId字符串
-
Field Details
-
DEFAULT_SIZE
public static final int DEFAULT_SIZE默认长度- See Also:
-
-
Constructor Details
-
NanoId
public NanoId()
-
-
Method Details
-
randomNanoId
生成伪随机的NanoId字符串,长度为默认的DEFAULT_SIZE,使用密码安全的伪随机生成器- Returns:
- 伪随机的NanoId字符串
-
randomNanoId
生成伪随机的NanoId字符串- Parameters:
size- ID长度- Returns:
- 伪随机的NanoId字符串
-
randomNanoId
-