竹简文档
UUID 生成

UuidUtil

UUID 工具类,提供 UUID 生成与转换能力

UuidUtil

UuidUtil 是筱工具(Java) 的 UUID 工具类,位于 com.xlf.utility.utility 包下。提供 UUID 生成、转换与格式化等静态方法。

类定义

UuidUtil.java
package com.xlf.utility.utility;

import java.util.UUID;

public class UuidUtil {
    // 静态方法,无需实例化
}

方法列表

生成方法

字段

类型

转换方法

字段

类型

从字符串生成

字段

类型

使用示例

生成随机 UUID

Example.java
import com.xlf.utility.utility.UuidUtil;

// 生成标准 UUID(带横杠)
String uuid = UuidUtil.generateStringUuid();
// 输出: "550e8400-e29b-41d4-a716-446655440000"

// 生成无横杠 UUID
String uuidNoDash = UuidUtil.generateUuidNoDash();
// 输出: "550e8400e29b41d4a716446655440000"

// 生成 UUID 对象
UUID uuidObj = UuidUtil.generateUuid();

生成链路追踪 ID

TraceService.java
import com.xlf.utility.utility.UuidUtil;

public class TraceService {

    public String generateTraceId() {
        // 使用无横杠 UUID 作为链路追踪 ID
        return UuidUtil.generateUuidNoDash();
    }
}

从字符串生成确定性 UUID

GravatarService.java
import com.xlf.utility.utility.UuidUtil;

public class GravatarService {

    public String getGravatarUrl(String email) {
        // 根据邮箱生成确定性 UUID(相同邮箱始终生成相同结果)
        String hash = UuidUtil.makeUuidFromStringNoDash(email.toLowerCase());
        return "https://www.gravatar.com/avatar/" + hash;
    }
}

UUID 转换

Example.java
import com.xlf.utility.utility.UuidUtil;
import java.util.UUID;

// 字符串转 UUID 对象
UUID uuid = UuidUtil.convertToUuid("550e8400-e29b-41d4-a716-446655440000");

UUID 格式说明

标准格式(36 位):
550e8400-e29b-41d4-a716-446655440000
└─8位─┘ └─4位┘ └─4位┘ └─4位┘ └───12位───┘

无横杠格式(32 位):
550e8400e29b41d4a716446655440000

与 UUID v7 的区别

特性UUID v4 (UuidUtil)UUID v7 (UuidV7Generator)
排序性随机,无序时间有序
碰撞概率理论上存在极低
适用场景链路追踪、临时 ID数据库主键、分布式 ID
性能略低(需获取时间戳)

下一步

On this page