জাভাতে জিইউইডি তৈরির কয়েকটি সেরা উপায় কী?
জাভাতে জিইউইডি তৈরির কয়েকটি সেরা উপায় কী?
উত্তর:
কটাক্ষপাত আছে UUID বর্গজাভা 5 এবং তার পরে ।
উদাহরণ স্বরূপ:
java.util.UUID.randomUUID();
UUID.randomUUID
পদ্ধতিটির দ্বারা নকলটি ফিরিয়ে দেওয়া তাত্ত্বিকভাবে সম্ভব , তবে এটি মোটেও বাস্তব উদ্বেগের বিষয় নয় । ওরাকল / ওপেনজেডিকে বাস্তবায়ন ক্রিপ্টোগ্রাফিকভাবে শক্তিশালী এলোমেলো নম্বর জেনারেটর ব্যবহার করে। এটি দেওয়া হয়েছে এবং কোনও ইউইউইডিতে এতগুলি বিট দ্বারা দেওয়া জ্যোতির্বিজ্ঞানের পরিসীমা দেওয়া, আপনি আপনার অ্যাপ্লিকেশনটিতে এই জাতীয় লক্ষ লক্ষ মান উত্পন্ন করতে পারেন এবং এখনও ভাল ঘুমাতে পারেন। "স্থান এবং সময়", [1] ম্যাক ঠিকানা বা নাম এবং [২] বর্তমান তারিখ-সময়কে সীমাবদ্ধতা হিসাবে ব্যবহার করার কারণে অন্য কোনও রূপের ব্যবহারের ফলে সংঘর্ষের সম্ভাবনা আরও শূন্যের কাছাকাছি পৌঁছে যায়।
while
যতক্ষণ না আপনি নিজের তালিকার ভিতরে না পেয়ে থাকেন: পি
এটি নির্ভর করে যে আপনি কোন ধরণের ইউইউডি চান।
স্ট্যান্ডার্ড জাভা UUID
ক্লাসটি সংস্করণ 4 (এলোমেলো) ইউইউডি উত্পন্ন করে । ( আপডেট - সংস্করণ 3 (নাম) ইউআইডিগুলিও উত্পন্ন করা যেতে পারে)) এটি অন্যান্য রূপগুলিও পরিচালনা করতে পারে, যদিও এটি সেগুলি উত্পন্ন করতে পারে না। (এই ক্ষেত্রে, "হাতল" অর্থ কনস্ট্রাক্ট UUID
থেকে দৃষ্টান্ত long
, byte[]
বা String
উপস্থাপনা, এবং কিছু উপযুক্ত accessors প্রদান।)
জাভা UUID জেনারেটর (| JUG) "হিসাবে দ্বারা সংজ্ঞায়িত সব 3 'অফিসিয়াল' UUID ধরনের বাস্তবায়ন প্রচরেই সমর্থন করার জন্য বোঝায় যা RFC-4122 " ... যদিও বোঝায় যা RFC আসলে 4 ধরনের সংজ্ঞায়িত এবং 5 ম টাইপ উল্লেখ করা হয়।
ইউআইডি টাইপ এবং বৈকল্পিক সম্পর্কে আরও তথ্যের জন্য, উইকিপিডিয়ায় একটি ভাল সংক্ষিপ্তসার রয়েছে , এবং গৌরবহীন বিবরণগুলি আরএফসি 4122 এবং অন্যান্য বৈশিষ্ট্যগুলিতে রয়েছে।
UUID.nameUUIDFromBytes(byte[] name)
public static UUID nameUUIDFromBytes(byte[] name)
। টাইপ 4 ব্যবহারের জন্য public static UUID randomUUID()
। প্রকার 1 জেডিকে শ্রেণিতে উপলব্ধ নয়।
clockSequence()
একটি উদাহরণ সহ কেবল মার্ক বাইয়ার্সের উত্তরটি প্রসারিত করতে:
import java.util.UUID;
public class RandomStringUUID {
public static void main(String[] args) {
UUID uuid = UUID.randomUUID();
System.out.println("UUID=" + uuid.toString() );
}
}
অন্যান্য উত্তরসমূহ সঠিক, বিশেষ করে হয় এই এক দ্বারা স্টিফেন সি ।
জাভাতে একটি ইউআইডি মান তৈরি করা সংস্করণ 4 (এলোমেলো) এর মধ্যে সীমাবদ্ধ is সুরক্ষা উদ্বেগের কারণে ।
আপনি যদি ইউআইডি-র অন্যান্য সংস্করণগুলি চান, তবে আপনার জাভা অ্যাপ্লিকেশনটি জাভিএমের বাইরের কাছে পৌঁছে দিয়ে ইউআইডিগুলি উত্পন্ন করার জন্য একটি এভিনিউ হ'ল :
uuidgen
ম্যাক ওএস এক্স, বিএসডি এবং লিনাক্সে পাওয়া গেছে।uuid-ossp
uuid_generate_v1mc()
- একটি সংস্করণ 1 ইউইউডি তৈরি করে তবে কম্পিউটারের আসল ম্যাক ঠিকানার পরিবর্তে এলোমেলো মাল্টিকাস্ট ম্যাক ঠিকানা ব্যবহার করে।uuid_generate_v5(namespace uuid, name text)
- একটি সংস্করণ 5 ইউইউডি উত্পন্ন করে, যা হ্যাশিং পদ্ধতি হিসাবে SHA-1 ব্যতীত ব্যবহৃত 3 সংস্করণ 3 ইউআইডি-র মতো কাজ করে।