Go ponúka mnoho spôsobov generovania UUID, ktoré sú pohodlným a robustným spôsobom organizácie vašich údajov.
Univerzálne jedinečné identifikátory (UUID) sú obľúbené na identifikáciu používateľov v aplikáciách, kde je nevyhnutný vysoký stupeň náhodnosti. UUID sú dobrou voľbou pre aplikácie, ktoré slúžia miliónom používateľov, pretože znižujú riziko kolízií a sú univerzálne odlišné medzi systémami.
Go neposkytuje žiadne balíky na generovanie UUID. Pretože väčšina operačných systémov súvisiacich so systémom Unix obsahuje uuidgen program, môžete použiť os balík na ich generovanie. Môžete tiež použiť externý balík Go, ako napríklad Google uuid alebo gouuid balík.
Generovanie UUID s balíkom os
The Go os balík poskytuje funkcie na interakciu s operačným systémom hostiteľského počítača spôsobom podobným Unixu. Príkazy môžete vykonávať pomocou
exec podbalenie os balík a získajte výstup pre svoj Choďte na programy.Importujte tieto vstavané balíky do svojho súboru Go a vygenerujte UUID pomocou os balík.
importovať (\n "fmt"\n "log"\n "os/exec"\n)\n
Budete používať log balík na zaznamenávanie možných chýb a na fmt balík na formátovanie reťazcov na výstup vygenerovaného UUID.
Príkazy môžete spúšťať pomocou Príkaz metóda exec balík. The Výkon metóda vráti výstup príkazu.
funcosExec() {\n vygeneruj UUID, chyba := exec. Príkaz("uuidgen").Výstup()\n \n ak chyba!= nula {\n prihlásiť sa. Závažné (chyba)\n }\n \n fmt. Println (generateUUID)\n}\n
The osExec funkcia vygeneruje a vytlačí UUID pomocou uuidgen príkaz.
Generovanie UUID pomocou balíka UUID od spoločnosti Google
Google uuid balík generuje a kontroluje UUID na základe RFC 4122 a DCE 1.1 Autentifikačné a bezpečnostné služby.
Spustite tento príkaz terminálu v adresári vášho projektu a nainštalujte ho uuid balík ako jednu zo závislostí vášho projektu.
ísť získaj github.com/google/uuid\n
Importovať uuid balík na generovanie UUID a fmt balík na výstup UUID do vašej konzoly.
importovať (\n "fmt"\n "github.com/google/uuid"\n)\n
UUID môžete vygenerovať pomocou balíka uuid Nový metóda. The Nový metóda vráti náhodné UUID a môžete ho použiť Reťazec metóda na získanie jeho reťazcovej reprezentácie.
funcgoogleUUID() {\n uuidValue := uuid. New()\n fmt. Println (uuidValue. String())\n}\n
The googleUUID funkcia využíva Nový metóda na tlač formátu reťazca náhodného UUID.
Generovanie UUID pomocou balíka GoUUID
Gouidový balík poskytuje nemenné štruktúry a funkcie UUID na generovanie UUID NewV3, NewV4 a NewV5 a analýzu UUID podľa špecifikácie v RFC 4122.
Spustite tento príkaz v termináli vášho pracovného adresára a nainštalujte ho gouuid balík k závislostiam vášho projektu.
ísť získaj github.com/nu7hatch/gouuid\n
Importovať fmt a gouuid balíky s aliasom uuid (konvenčné) na generovanie UUID.
importovať (\n "fmt"\n uuid "github.com/nu7hatch/gouuid"\n)\n
UUID verzie 4 môžete vygenerovať pomocou NewV4 metóda, ktorá vráti UUID alebo chybu.
funcgenerovať V4(){\n v4UUID, chyba := uuid. NewV4()\n \n ak chyba!= nula {\n fmt. Println (chyba)\n }\n \n fmt. Println (v4UUID)\n}\n
The generovať V4 metóda vytlačí vygenerované UUID z NewV4 metóda gouuid balík.
Podobne môžete vygenerovať UUID verzie 5 pomocou NewV5 metóda. The NewV5 metóda prevezme adresu URL priestoru názvov UUID a bajtový výsek a vráti vygenerovaný UUID verzie 5.
funcgenerovať V5(){\n v5UUID, chyba := uuid. NewV5(uuid. Adresa URL priestoru názvov, []byte("go.dev"))\n \n ak chyba!= nula {\n fmt. Println (chyba)\n }\n \n fmt. Println (v5UUID)\n}\n
The generovať V5 funkcia vytlačí vygenerovanú verziu päť UUID po vygenerovaní UUID s NewV5 metóda, ak sa nevyskytujú chyby pri generovaní.
Môžete generovať UUID s väčšinou programovacích jazykov
UUID sú užitočné v mnohých prípadoch použitia, takže sú obľúbené v každodenných aplikáciách. Väčšina programovacích jazykov poskytuje funkcie na generovanie UUID vo svojich štandardných knižniciach alebo ekosystémových balíkoch.