يرمز UUID إلى المعرّف الفريد عالميًا، وهو عبارة عن قيمة طويلة بطول 128 بت تُستخدم لتحديد المعلومات في أنظمة الكمبيوتر. تم تصميم UUID الذي تم إنشاؤه بواسطة منشئ UUID ليكون فريدًا عبر جميع الأنظمة وفي كل الأوقات. يبلغ طول UUID 36 حرفًا، بما في ذلك الواصلات، ويتم تمثيله عادةً بالتدوين الست عشري.
ما هو UUID في جافا؟
تعد فئة UUID في Java جزءًا من حزمة java.util وتوفر طرقًا لإنشاء UUID ومعالجتها. إنها فئة شائعة الاستخدام في Java لإنشاء معرفات فريدة. بمساعدة فئة UUID في Java، يمكننا بسهولة إنشاء معرفات UUID عشوائية، بالإضافة إلى إنشاء UUID من مصادر مختلفة مثل صفائف البايت والسلاسل والقيم الطويلة. يمكننا الحصول على مجموعة متنوعة من UUIDs المختلفة التي تم إنشاؤها في كل مرة يتم فيها استدعاء المولد. تعد UUIDs التي تم إنشاؤها فريدة من نوعها وتم تصميمها لتكون فريدة عالميًا، مما يعني أنه لن يتم إنشاء نفس UUID مرتين بواسطة أنظمة مختلفة. يمكننا استخدام UUIDs التي تم إنشاؤها لمجموعة متنوعة من الأغراض مثل معرفات الجلسة ومفاتيح قاعدة البيانات والسيناريوهات الأخرى التي يكون فيها التفرد مهمًا.توليد UUID في جافا
لإنشاء UUID في Java، نستخدم فئة java.util.UUID . توفر الفئة java.util.UUID طريقتين لإنشاء UUIDs: RandomUUID() و nameUUIDFromBytes(byte[] name) . تقوم الطريقة RandUUID () بإنشاء UUID عشوائي. لا تتطلب هذه الطريقة أية وسائط، وتقوم بإنشاء UUID عشوائي في كل مرة يتم استدعاؤها. فيما يلي مثال لكيفية استخدام طريقة RandUUID() :import java.util.UUID;
public class UUIDExample {
public static void main(String[] args) {
// generating a random UUID
UUID uuid = UUID.randomUUID();
// print the UUID
System.out.println("Generated UUID: " + uuid);
}
}
انتاج |
UUID الذي تم إنشاؤه: d3ee2929-212b-4077-af84-694a0e69b8e1
تقوم طريقة nameUUIDFromBytes(byte[] name) بإنشاء UUID من صفيف بايت. تأخذ هذه الطريقة مصفوفة بايت كوسيطة وتقوم بإنشاء UUID بناءً على محتويات مصفوفة البايت. فيما يلي مثال لكيفية استخدام طريقة nameUUIDFromBytes(byte[] name) :
import java.util.UUID;
public class UUIDExample {
public static void main(String[] args) {
// generating a UUID from a byte array
byte[] name = { 1, 2, 3, 4, 5 };
UUID uuid = UUID.nameUUIDFromBytes(name);
// print the UUID
System.out.println("Generated UUID: " + uuid);
}
}
انتاج |
UUID الذي تم إنشاؤه: 4d6579d4-c3e7-38a1-9246-017e903b2c33
خصائص UUID
UUIDs لها الخصائص التالية:- الطول: يبلغ طول UUIDs 128 بت، مما يعني أنها تحتوي على 16 بايت من البيانات. وهذا الطول يجعلها مناسبة للاستخدام في أنظمة الكمبيوتر حيث يمكن تخزينها بكفاءة.
- التفرد: احتمال أن يكون هناك معرفان UUID متماثلان منخفض جدًا. تبلغ فرصة الاصطدام حوالي 1 في 2^128، وهو رقم صغير للغاية.
- العشوائية: يتم إنشاء UUID باستخدام خوارزمية تضمن العشوائية. تجعل هذه العشوائية من الصعب على أي شخص توقع UUIDs التي سيتم إنشاؤها.
- الإصدار: يتم تقسيم UUIDs إلى إصدارات، حيث يستخدم كل إصدار خوارزمية مختلفة لإنشاء UUID. الإصدارات الأكثر استخدامًا هي الإصدار 1 والإصدار 4. يتم إنشاء معرفات UUID للإصدار 1 باستخدام الوقت الحالي وعنوان MAC للكمبيوتر الذي يقوم بإنشاء UUID. يتم إنشاء UUIDs للإصدار 4 باستخدام أرقام عشوائية.
طول UUID
UUID هي قيمة 128 بت، ممثلة بسلسلة مكونة من 36 حرفًا. تحتوي السلسلة على 32 رقمًا سداسيًا عشريًا، مقسمة إلى مجموعات مكونة من 8 و4 و4 و4 و12 رقمًا، مفصولة بواصلات. فيما يلي مثال لسلسلة UUID:123e4567-e89b-12d3-a456-426655440000
مثال UUID: فيما يلي مثال لـ UUID، الذي تم إنشاؤه باستخدام طريقة RandUUID() :
d3ee2929-212b-4077-af84-694a0e69b8e1
يتكون UUID هذا من 32 رقمًا سداسيًا عشريًا، مقسمة إلى مجموعات مكونة من 8 و4 و4 و4 و12 رقمًا، مفصولة بواصلات. في مثال UUID أعلاه عندما نتحدث عن فئة UUID في Java، يشير مصطلح إنشاء UUID إلى عملية إنشاء UUID جديد باستخدام فئة java.util.UUID . تتضمن هذه العملية استدعاء أحد أساليب المصنع الثابتة لفئة UUID مثل RandUUID() أو nameUUIDFromBytes(byte[]) . بمجرد استدعاء إحدى هذه الطرق، ستقوم فئة UUID في Java بإنشاء UUID جديد وإعادته إلينا. يمكن بعد ذلك استخدام UUIDs التي تم إنشاؤها في تطبيقنا حسب الحاجة.
GO TO FULL VERSION