এই ব্লগটি Java System.getProperty() এবং System.getenv() পদ্ধতির মধ্যে পার্থক্য ব্যাখ্যা করে।
জাভাতে System.getProperty() পদ্ধতি কি?
দ্য ' System.getProperty() ” পদ্ধতি প্রদত্ত সিস্টেম সম্পত্তির সাথে যুক্ত মান প্রদান করে। এটি একটি ' প্রকৃত মূল্য ' জোড়া বিন্যাস, যেমন সেগুলি সিস্টেম অ্যাডমিনিস্ট্রেটর দ্বারা বা কনফিগারেশন ফাইলগুলিতে সংজ্ঞায়িত করা হয়। এর সাহায্যে সম্পত্তি সেট করা যেতে পারে ' -ডি 'পতাকা বা সম্পত্তি পাওয়া না গেলে, ' খালি ” ফেরত পায়। ডিফল্ট বা বেশিরভাগ ব্যবহৃত সিস্টেম বৈশিষ্ট্যগুলি তাদের বিবরণ সহ এতে বর্ণনা করা হয়েছে লিঙ্ক .
সিস্টেমের কিছু বৈশিষ্ট্য নিচের কোড স্নিপেটে ব্যবহার করা হয়েছে:
সিস্টেমের কিছু বৈশিষ্ট্য নিচের কোড স্নিপেটে ব্যবহার করা হয়েছে:
ক্লাস অভিভাবক {
// ড্রাইভার পদ্ধতি শুরু করা হচ্ছে
পাবলিক স্থির অকার্যকর প্রধান ( স্ট্রিং [ ] args ) {
স্ট্রিং ব্যবহারকারীর নাম = পদ্ধতি. সম্পত্তি পান ( 'ব্যবহারকারীর নাম' ) ;
পদ্ধতি. আউট . println ( 'সিস্টেম সম্পত্তি ব্যবহার করে ব্যবহারকারীর নাম:' + ব্যবহারকারীর নাম ) ;
স্ট্রিং ক্লাসপাথ = পদ্ধতি. সম্পত্তি পান ( 'java.class.path' ) ;
পদ্ধতি. আউট . println ( 'রুট ডিরেক্টরি থেকে বর্তমান ক্লাস পাথ:' + ক্লাসপাথ ) ;
পদ্ধতি. আউট . println ( 'ভুল সম্পত্তি ব্যবহার করা হয়:' + পদ্ধতি. সম্পত্তি পান ( 'বাড়ি' ) ) ;
পদ্ধতি. আউট . println ( 'JRE সংস্করণ তথ্য:' + পদ্ধতি. সম্পত্তি পান ( 'java.runtime.version' ) ) ;
পদ্ধতি. আউট . println ( 'বর্তমান সিস্টেম ওএসের আর্কিটেকচার:' + পদ্ধতি. সম্পত্তি পান ( 'os.arch' ) ) ;
}
}
উপরের কোডের বর্ণনা:
- প্রথমত, সিস্টেমের প্রকৃত মালিক বা ব্যবহারকারীকে পাস করে পুনরুদ্ধার করা হয় ' ব্যবহারকারীর নাম 'এ সম্পত্তি' System.getProperty() 'পদ্ধতি।
- পরবর্তী, সম্পত্তি ' java.class.path 'এ পাস করা হয়' System.getProperty() রুট ডিরেক্টরি থেকে বর্তমান ক্লাসের পাথ পুনরুদ্ধার করার পদ্ধতি।
- তারপর, 'এর মিথ্যা সম্পত্তি বাড়ি ' প্রেরণ করা হয়,
- দ্য ' System.getProperty() 'পদ্ধতি প্রদর্শিত হবে' খালি ” ইঙ্গিত করে যে সম্পত্তির অস্তিত্ব নেই।
- একই পদ্ধতিতে, জাভা রানটাইম সংস্করণ এবং সিস্টেম আর্কিটেকচার 'কে পাস করে পুনরুদ্ধার করা হচ্ছে java.runtime.version ' এবং ' os.arch ”, যথাক্রমে।
আউটপুট দেখায় যে সিস্টেম বৈশিষ্ট্যগুলির জন্য প্রয়োজনীয় মানগুলি 'System.getProperty()' পদ্ধতির সাহায্যে পুনরুদ্ধার করা হয়েছে।
জাভাতে System.getenv() পদ্ধতি কি?
দ্য ' System.getenv() ” পদ্ধতি নির্দিষ্ট এনভায়রনমেন্ট ভেরিয়েবলের জন্য সংশ্লিষ্ট মান প্রদান করে। প্রত্যাবর্তিত মানগুলি গতিশীল এবং সেগুলি বর্তমান সেশনের জন্য সিস্টেম অপারেটিং সিস্টেম বা ব্যবহারকারী দ্বারা সেট করা হয়েছে৷ 'System.getProperty()' পদ্ধতির মতো যদি ভেরিয়েবলটি পাওয়া না যায় বা কোনো মান না থাকে, তাহলে ' খালি ” ফেরত পায়।
উদাহরণস্বরূপ, নীচের কোড দেখুন:
ক্লাস রুটক্লাস {// ড্রাইভার পদ্ধতি শুরু করা হচ্ছে
পাবলিক স্থির অকার্যকর প্রধান ( স্ট্রিং [ ] args ) {
পদ্ধতি. আউট . println ( 'System.getenv() পদ্ধতি ব্যবহার করে মান পুনরুদ্ধার' ) ;
স্ট্রিং অস্থায়ী পথ = পদ্ধতি. tenv ( 'TEMP' ) ;
পদ্ধতি. আউট . println ( 'অস্থায়ী ফাইল ফোল্ডারের পথ হল:' + অস্থায়ী পথ ) ;
স্ট্রিং অপারেটিং সিস্টেম = পদ্ধতি. tenv ( 'NUMBER_OF_PROCESSORS' ) ;
পদ্ধতি. আউট . println ( 'প্রসেসর সিস্টেমের সংখ্যা রয়েছে:' + অপারেটিং সিস্টেম ) ;
স্ট্রিং windowsDirectory = পদ্ধতি. tenv ( 'বাতাস' ) ;
পদ্ধতি. আউট . println ( 'সিস্টেম রুট পাথ প্রদর্শন করা হচ্ছে -' + windowsDirectory ) ;
}
}
উপরের কোড ব্লকের ব্যাখ্যা:
- প্রথমে, 'নাম দিয়ে ক্লাস তৈরি করা হয় রুটক্লাস ' এবং ' System.getenv() 'পদ্ধতিটি পাস করে অস্থায়ী ফোল্ডারের পাথ ফেরত দিতে ব্যবহৃত হয় TEMP 'একটি মান হিসাবে।
- এর পরে, সিস্টেমের জন্য প্রসেসরের সংখ্যা এবং উইন্ডোজ ডিরেক্টরি পাস করে পুনরুদ্ধার করা হয় ' NUMBER_OF_PROCESSORS ' এবং ' বায়ু ” যথাক্রমে “System.getenv()” পদ্ধতিতে।
সংকলনের পরে:
আউটপুট নিশ্চিত করে যে প্রয়োজনীয় পরিবেশ পরিবর্তনশীল মান পুনরুদ্ধার করা হয়েছে।
Java System.getProperty এবং System.getenv-এর মধ্যে পার্থক্য
System.getProperty() এবং System.getenv() পদ্ধতির মধ্যে পার্থক্য নীচে টেবিলে বর্ণনা করা হয়েছে:
মেয়াদ | System.getProperty() | System.getenv() |
---|---|---|
উদ্দেশ্য | এটি JVM-এর জন্য নির্দিষ্ট সিস্টেম বৈশিষ্ট্য পুনরুদ্ধার করতে ব্যবহৃত হয়। | এটি অপারেটিং সিস্টেমের পরিবেশের জন্য নির্দিষ্ট পরিবেশের ভেরিয়েবল পুনরুদ্ধার করতে ব্যবহৃত হয়। |
উৎস | সিস্টেমের বৈশিষ্ট্যগুলি সাধারণত কমান্ড-লাইন আর্গুমেন্ট হিসাবে সেট করা হয়। | এনভায়রনমেন্ট ভেরিয়েবল OS পরিবেশে সেট করা হয়। |
অ্যাক্সেস | এটি সিস্টেমের বৈশিষ্ট্য এবং পরিবেশ ভেরিয়েবল উভয়ই পুনরুদ্ধার করতে পারে। | এটি শুধুমাত্র এনভায়রনমেন্ট ভেরিয়েবল পুনরুদ্ধার করতে পারে, এবং এটি ভেরিয়েবলের জন্য নির্দিষ্ট কীগুলির প্রয়োজন। |
ব্যবহার | এটি সাধারণত JVM সম্পর্কে তথ্য পুনরুদ্ধার করতে ব্যবহার করা হয়, যেমন জাভা সংস্করণ। | এটি সাধারণত পরিবেশ-নির্দিষ্ট কনফিগারেশন বা সংবেদনশীল তথ্য অ্যাক্সেস করতে ব্যবহৃত হয়। |
বহনযোগ্যতা | এটি প্ল্যাটফর্ম-স্বাধীন এবং বিভিন্ন অপারেটিং সিস্টেম জুড়ে ধারাবাহিকভাবে অ্যাক্সেস করা যেতে পারে। | ভেরিয়েবল বিভিন্ন অপারেটিং সিস্টেমের মধ্যে পরিবর্তিত হতে পারে এবং বিভিন্ন আচরণ থাকতে পারে। |
উপসংহার
দ্য ' System.getProperty() ” পদ্ধতির জাভা-নির্দিষ্ট বৈশিষ্ট্য এবং সিস্টেম কনফিগারেশন অ্যাক্সেস আছে। দ্য ' System.getenv() ” অপারেটিং সিস্টেমে সংজ্ঞায়িত পরিবেশের ভেরিয়েবল অ্যাক্সেস করে। যাইহোক, উভয়ই সিস্টেম-সম্পর্কিত তথ্য ফেরত দেওয়ার জন্য উপযুক্ত। তদুপরি, সিস্টেমের পরিবেশ সম্পর্কে তথ্য পুনরুদ্ধারের জন্য তাদের একই উদ্দেশ্য রয়েছে, তবে তারা ডেটার বিভিন্ন সেটে কাজ করে।