Go pakub palju võimalusi UUID-de genereerimiseks, mis on mugav ja jõuline viis andmete korraldamiseks.
Universaalselt unikaalsed identifikaatorid (UUID) on populaarsed kasutaja tuvastamiseks rakendustes, kus on oluline suur juhuslikkuse tase. UUID-id on hea valik rakenduste jaoks, mis teenindavad miljoneid kasutajaid, kuna need vähendavad kokkupõrgete võimalust ja on süsteemides üldiselt erinevad.
Go ei paku UUID-de genereerimiseks ühtegi paketti (pakette). Kuna enamik Unixiga seotud operatsioonisüsteeme sisaldab uuidgen programmi, saate kasutada os pakett nende genereerimiseks. Võite kasutada ka välist Go paketti, näiteks Google'i oma uuid või gouuid pakett.
UUID-de genereerimine operatsioonisüsteemi paketiga
Mine os pakett pakub funktsioone hostmasina operatsioonisüsteemiga suhtlemiseks Unixi sarnasel viisil. Käske saate täita nupuga
täitja alampakett os paketti ja hankige oma väljund Mine programmidesse.Importige need sisseehitatud paketid oma Go-faili, et luua UUID-d rakendusega os pakett.
importida (\n "fmt"\n "logi"\n "os/exec"\n)\n
Sa kasutad logi pakett võimalike vigade logimiseks ja a fmt stringi vormindamise pakett genereeritud UUID väljastamiseks.
Käske saate käivitada nupuga Käsk meetod täitja pakett. The Väljund meetod tagastab käsu väljundi.
funcosExec() {\n genereeri UUID, err := exec. käsk("uuidgen").Väljund()\n \n kui eks!= null {\n logi. Saatuslik (viga)\n }\n \n fmt. Println (generateUUID)\n}\n
The osExec funktsioon genereerib ja prindib UUID-i kasutades uuidgen käsk.
UUID-de loomine Google'i UUID-paketiga
Google uuid pakett genereerib ja kontrollib nende põhjal UUID-sid RFC 4122 ja DCE 1.1 autentimis- ja turvateenused.
Käivitage see terminali käsk oma projekti kataloogis, et installida uuid pakett kui üks teie projekti sõltuvustest.
mine hankige github.com/google/uuid\n
Importige uuid pakett UUID-de genereerimiseks ja fmt paketti UUID väljastamiseks oma konsooli.
importida (\n "fmt"\n "github.com/google/uuid"\n)\n
UUID-i saate luua uuid-paketiga Uus meetod. The Uus meetod tagastab juhusliku UUID-i ja saate seda kasutada String meetod selle stringi esituse saamiseks.
funcgoogleUUID() {\n uuidValue := uuid. Uus()\n fmt. Println (uuidValue. String())\n}\n
The googleUUID funktsioon kasutab Uus juhusliku UUID stringivormingu printimise meetod.
UUID-de genereerimine GoUUID-paketiga
Gouuidi pakett pakub muutumatuid UUID-struktuure ja funktsioone NewV3, NewV4 ja NewV5 UUID-de genereerimiseks ning UUID-de sõelumiseks vastavalt standardile RFC 4122.
Käivitage see käsk oma töökataloogi terminalis, et installida gouuid pakett oma projekti sõltuvustele.
mine hankige github.com/nu7hatch/gouuid\n
Importige fmt ja gouuid aliasega paketid uuid (tavapärane) UUID-de genereerimiseks.
importida (\n "fmt"\n uuid "github.com/nu7hatch/gouuid"\n)\n
Saate luua versiooni 4 UUID-sid rakendusega UusV4 meetod, mis tagastab UUID või vea.
funcgenereeridaV4(){\n v4UUID, err := uuid. UusV4()\n \n kui eks!= null {\n fmt. Println (err)\n }\n \n fmt. Println (v4UUID)\n}\n
The genereeridaV4 meetod prindib loodud UUID-i failist UusV4 meetod gouuid pakett.
Samamoodi saate luua versiooni 5 UUID-sid rakendusega UusV5 meetod. The UusV5 meetod võtab sisse UUID-nimeruumi URL-i ja baidilõigu ning tagastab loodud versiooni 5 UUID.
funcgenereerida V5(){\n v5UUID, err := uuid. UusV5(uuid. Nimeruumi URL, []bait("go.dev"))\n \n kui eks!= null {\n fmt. Println (err)\n }\n \n fmt. Println (v5UUID)\n}\n
The genereerida V5 funktsioon prindib loodud versiooni 5 UUID pärast UUID genereerimist rakendusega UusV5 meetod, kui genereerimisvigu pole.
Enamiku programmeerimiskeeltega saate luua UUID-sid
UUID-d on abiks paljudel kasutusjuhtudel, seega on need igapäevastes rakendustes populaarsed. Enamik programmeerimiskeeli pakuvad funktsioone UUID-de genereerimiseks nende standardsetes teekides või ökosüsteemipakettides.