Go предлагает множество способов создания UUID, которые представляют собой удобный и надежный способ организации ваших данных.
Универсальные уникальные идентификаторы (UUID) популярны для идентификации пользователей в приложениях, где важна высокая степень случайности. UUID — хороший выбор для приложений, которые обслуживают миллионы пользователей, поскольку они снижают вероятность коллизий и универсальны для разных систем.
Go не предоставляет никаких пакетов для генерации UUID. Поскольку большинство операционных систем, связанных с Unix, включают в себя уидген программу, вы можете использовать Операционные системы пакет для их создания. Вы также можете использовать внешний пакет Go, такой как Google. UUID или Гуид упаковка.
Создание UUID с помощью пакета os
Идти Операционные системы
Пакет предоставляет функциональные возможности для взаимодействия с операционной системой хост-компьютера в стиле Unix. Вы можете выполнять команды с исполнитель подпакет Операционные системы упаковать и получить вывод для вашего Программы Go.Импортируйте эти встроенные пакеты в свой файл Go, чтобы сгенерировать UUID с помощью Операционные системы упаковка.
Импортировать (\n "ФМТ"\n "бревно"\n "ОС/exec"\n)\n
Вы будете использовать бревно пакет для регистрации возможных ошибок и в ФМТ пакет форматирования строк для вывода сгенерированного UUID.
Вы можете запускать команды с Команда метод исполнитель упаковка. Выход метод возвращает вывод команды.
функцияОСExec() {\n сгенерироватьUUID, err := exec. Команда("уидген").Вывод()\n \n если ошибся != ноль {\n лог. Fatal (err)\n }\n \n fmt. Println (генерация UUID)\n}\n
ОСExec функция генерирует и печатает UUID, используя уидген команда.
Генерация UUID с помощью пакета UUID от Google
Google UUID пакет генерирует и проверяет UUID на основе RFC 4122 и Службы аутентификации и безопасности DCE 1.1.
Запустите эту команду терминала в каталоге вашего проекта, чтобы установить UUID package как одну из зависимостей вашего проекта.
идти получить github.com/google/uuid\n
Импортировать UUID пакет для генерации UUID и ФМТ package для вывода UUID на вашу консоль.
Импортировать (\n "ФМТ"\n "github.com/google/uuid"\n)\n
Вы можете сгенерировать UUID с помощью пакета uuid Новый метод. Новый метод возвращает случайный UUID, и вы можете использовать его Нить метод для получения его строкового представления.
функцияGoogleUUID() {\n uuidValue := uuid. Новый()\n fmt. Println(uuidValue. Строка())\n}\n
GoogleUUID функция использует Новый метод для печати строкового формата случайного UUID.
Создание UUID с помощью пакета GoUUID
Гуид пакет предоставляет неизменяемые структуры UUID и функции для генерации UUID NewV3, NewV4 и NewV5 и анализа UUID, как указано в RFC 4122.
Запустите эту команду в терминале вашего рабочего каталога, чтобы установить Гуид package к зависимостям вашего проекта.
идти получить github.com/nu7hatch/gouuid\n
Импортировать ФМТ и Гуид пакеты с псевдонимом UUID (обычный) для генерации UUID.
Импортировать (\n "ФМТ"\n UUID "github.com/nu7hatch/gouuid"\n)\n
Вы можете сгенерировать UUID версии 4 с помощью НовыйV4 метод, который возвращает UUID или ошибку.
функциясгенерироватьV4(){\n v4UUID, err := uuid. НовыйV4()\n \n если ошибся != ноль {\ п фмт. Println (ошибка)\n }\n \n fmt. Распечататьln (v4UUID)\n}\n
сгенерироватьV4 метод печатает сгенерированный UUID из НовыйV4 метод Гуид упаковка.
Точно так же вы можете сгенерировать UUID версии 5 с помощью НовыйV5 метод. НовыйV5 Метод принимает URL-адрес пространства имен UUID и фрагмент байта и возвращает сгенерированный UUID версии 5.
функциясгенерироватьV5(){\n v5UUID, err := uuid. НоваяV5(uuid. URL-адрес пространства имен, []байт("go.dev"))\n\n если ошибся != ноль {\ п фмт. Println (ошибка)\n }\n \n fmt. Распечататьln (v5UUID)\n}\n
сгенерироватьV5 функция печатает сгенерированный UUID версии пять после генерации UUID с НовыйV5 метод, если нет ошибок генерации.
Вы можете генерировать UUID с большинством языков программирования
UUID полезны во многих случаях использования, поэтому они популярны в повседневных приложениях. Большинство языков программирования предоставляют функции для создания UUID в своих стандартных библиотеках или пакетах экосистемы.