乐趣区

什么是uuid

什么是 uuid?

uuid 是 Universally Unique Identifier 的缩写,即通用唯一识别码。

uuid 的目的是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,

每个人都可以建立不与其它人冲突的 uuid。

go 生成 uuid:

目前,golang 中的 uuid 还没有纳入标准库,我们使用 github 上的开源库:

go get -u github.com/satori/go.uuid

参考文档
https://gowalker.org/github.c…

package main

import ("github.com/satori/go.uuid")

func main() {
    // 创建 UUID v4
    u1 := uuid.Must(uuid.NewV4())
    println(` 生成的 UUID v4:`)
    println(u1.String())

    // 创建可以进行错误处理的 UUID v4
    u2, err1 := uuid.NewV4()
    if err1 != nil {println(` 生成一个 UUID v4 时出现错误:`)
        panic(err1)
    }
    println(` 生成的 UUID v4:`)
    println(u2.String())

    // 解析 字符串 到 UUID
    u2, err2 := uuid.FromString(`6ba7b810-9dad-11d1-80b4-00c04fd430c8`)
    if err2 != nil {println(` 解析 字符串 到 UUID 时出错 `)
        panic(err2)
    }
    println(` 解析 字符串 到 UUID 成功!解析到的 UUID 如下:`)
    println(u2.String())
}

PS D:golanggithubgolang_projectuuid> go run .uuid.go
生成的 UUID v4:
91e51481-23e7-4c32-873b-aa4b57a9fb46
生成的 UUID v4:
d82681c7-ddde-4425-9c60-9ed1cb7dc339
解析 字符串 到 UUID 成功!解析到的 UUID 如下:
6ba7b810-9dad-11d1-80b4-00c04fd430c8

退出移动版