Java System.getProperty এবং System.getenv-এর মধ্যে পার্থক্য?

Java System Getproperty Ebam System Getenv Era Madhye Parthakya



দ্য ' System.getProperty() ” পদ্ধতিটি জাভা রানটাইম বা সিস্টেম কনফিগারেশনের সাথে সম্পর্কিত নির্দিষ্ট সিস্টেম বৈশিষ্ট্যগুলি পুনরুদ্ধার করে। এটি জাভা পরিবেশ এবং যে সিস্টেমে এটি কার্যকর করা হচ্ছে তার জন্য অপারেটিং সিস্টেম সম্পর্কে তথ্য সরবরাহ করে। অন্যদিকে, “ System.getenv() ” পদ্ধতিটি OS পরিবেশে সংজ্ঞায়িত নির্দিষ্ট পরিবেশের ভেরিয়েবল অ্যাক্সেস করে। এটিতে সিস্টেম এবং বর্তমান ব্যবহারকারী সেশন সম্পর্কে গতিশীল তথ্য রয়েছে।

এই ব্লগটি 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() ” অপারেটিং সিস্টেমে সংজ্ঞায়িত পরিবেশের ভেরিয়েবল অ্যাক্সেস করে। যাইহোক, উভয়ই সিস্টেম-সম্পর্কিত তথ্য ফেরত দেওয়ার জন্য উপযুক্ত। তদুপরি, সিস্টেমের পরিবেশ সম্পর্কে তথ্য পুনরুদ্ধারের জন্য তাদের একই উদ্দেশ্য রয়েছে, তবে তারা ডেটার বিভিন্ন সেটে কাজ করে।