Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा में दूरस्थ विधि पर डेटा कैसे भेजें?

RMI का अर्थ है रिमोट मेथड इनवोकेशन . यह एक ऐसा तंत्र है जो एक सिस्टम (JVM) में रहने वाली किसी वस्तु को दूसरे JVM पर चल रही किसी वस्तु तक पहुँचने/आह्वान करने की अनुमति देता है।

RMI का उपयोग वितरित अनुप्रयोगों के निर्माण के लिए किया जाता है; यह जावा प्रोग्रामों के बीच दूरस्थ संचार प्रदान करता है। यह पैकेज java.rmi . में दिया गया है ।

RMI Java एप्लिकेशन लिखने के लिए, आपको नीचे दिए गए चरणों का पालन करना होगा -

चरण1 - दूरस्थ इंटरफ़ेस को परिभाषित करें

एक दूरस्थ इंटरफ़ेस किसी विशेष दूरस्थ वस्तु के सभी तरीकों का विवरण प्रदान करता है। क्लाइंट इस दूरस्थ इंटरफ़ेस के साथ संचार करता है। इसलिए, आपको एक ऐसा इंटरफ़ेस बनाने की आवश्यकता है जो पूर्वनिर्धारित इंटरफ़ेस, java.rmi का विस्तार करे।रिमोट

उदाहरण

import java.rmi.Remote;import java.rmi.RemoteException;सार्वजनिक इंटरफ़ेस हैलो रिमोट बढ़ाता है {शून्य प्रिंटएमएसजी () रिमोटएक्सप्शन फेंकता है;}

चरण 2 - कार्यान्वयन वर्ग (रिमोट ऑब्जेक्ट) विकसित करें

हमें पहले चरण में बनाए गए दूरस्थ इंटरफ़ेस को लागू करने की आवश्यकता है। (हम एक कार्यान्वयन वर्ग अलग से लिख सकते हैं या हम सीधे सर्वर प्रोग्राम को इस इंटरफ़ेस को लागू कर सकते हैं।) इसलिए, दूरस्थ इंटरफ़ेस के सभी सार विधियों को कार्यान्वयन प्रदान करें।

उदाहरण

सार्वजनिक वर्ग ImplExample हैलो लागू करता है { public void printMsg() { System.out.println ("यह एक उदाहरण RMI प्रोग्राम है"); }}

चरण3 - सर्वर प्रोग्राम विकसित करें

एक आरएमआई सर्वर प्रोग्राम को रिमोट इंटरफेस लागू करना चाहिए या कार्यान्वयन वर्ग का विस्तार करना चाहिए। यहां, हमें एक दूरस्थ वस्तु बनानी चाहिए और उसे RMIregistry . से बांधना चाहिए . इसलिए, एक सर्वर प्रोग्राम विकसित करें जैसा कि नीचे दिखाया गया है -

उदाहरण

आयात करें स्थैतिक शून्य मुख्य (स्ट्रिंग तर्क []) {कोशिश {ImplExample obj =नया ImplExample (); हैलो स्टब =(हैलो) UnicastRemoteObject.exportObject (obj, 0); रजिस्ट्री रजिस्ट्री =LocateRegistry.getRegistry (); रजिस्ट्री.बाइंड ("हैलो", स्टब); System.err.println ("सर्वर तैयार"); } पकड़ (अपवाद ई) { System.err.println ("सर्वर अपवाद:" + e.toString ()); ई.प्रिंटस्टैकट्रेस (); } }}

चरण4 - क्लाइंट प्रोग्राम विकसित करें

इसमें क्लाइंट प्रोग्राम लिखें, रिमोट ऑब्जेक्ट प्राप्त करें और इस ऑब्जेक्ट का उपयोग करके आवश्यक विधि को लागू करें।

उदाहरण

आयात करें (व्यर्थ); हैलो स्टब =(हैलो) रजिस्ट्री। लुकअप ("हैलो"); stub.printMsg (); } पकड़ (अपवाद ई) { System.err.println ("क्लाइंट अपवाद:" + e.toString ()); ई.प्रिंटस्टैकट्रेस (); } }}

चरण5 - एप्लिकेशन संकलित करें

एप्लिकेशन को संकलित करने के लिए -

  • दूरस्थ इंटरफ़ेस संकलित करें।

  • कार्यान्वयन वर्ग संकलित करें।

  • सर्वर प्रोग्राम संकलित करें।

  • क्लाइंट प्रोग्राम संकलित करें।

चरण6 - एप्लिकेशन निष्पादित करें

  • आरएमआई . प्रारंभ करें निम्न आदेश का उपयोग कर रजिस्ट्री।

आर्मीरजिस्ट्री शुरू करें

यह एक rmi . शुरू करेगा एक अलग विंडो पर रजिस्ट्री।

  • सर्वर क्लास फ़ाइल को नीचे दिखाए अनुसार चलाएँ -

जावा में दूरस्थ विधि पर डेटा कैसे भेजें?

  • क्लाइंट क्लास फ़ाइल को नीचे दिखाए अनुसार चलाएँ -

जावा में दूरस्थ विधि पर डेटा कैसे भेजें?

  • सत्यापन - जैसे ही आप क्लाइंट शुरू करते हैं, आपको सर्वर में निम्न आउटपुट दिखाई देगा।

जावा में दूरस्थ विधि पर डेटा कैसे भेजें?


  1. जावा में गुण फ़ाइल से डेटा कैसे पढ़ा जाए?

    गुण हैशटेबल वर्ग का एक उपवर्ग है और यह गुणों के निरंतर सेट का प्रतिनिधित्व करता है। गुण स्ट्रीम में सहेजा जा सकता है या स्ट्रीम से लोड किया जा सकता है। गुण सूची में प्रत्येक कुंजी और उसके संगत मान एक स्ट्रिंग है। गुण फ़ाइल का उपयोग जावा में कॉन्फ़िगरेशन को बाहरी बनाने और कुंजी-मूल्य जोड़े को संग

  1. जावा में जेएलिस्ट आइटम का चयन करते समय मूल्य कैसे प्रदर्शित करें?

    एक JList JComponent . का उपवर्ग है वर्ग जो उपयोगकर्ता को एकल . चुनने की अनुमति देता है या आइटम के अनेक चयन . JList एक ListSelectionListener . उत्पन्न कर सकता है इंटरफ़ेस और इसमें एक सार विधि शामिल है valueChanged() . MouseListener . को लागू करके जब JList से किसी आइटम का चयन किया जाता है तो हम ए

  1. हम जावा में जेपीनल की पेंटकंपोनेंट () विधि को कैसे कार्यान्वित कर सकते हैं?

    A JPanel एक हल्का कंटेनर है और यह एक अदृश्य . है घटक जावा में। JPanel का डिफ़ॉल्ट लेआउट FlowLayout है . JPanel बनने के बाद, अन्य घटकों को JPanel . में जोड़ा जा सकता है इसके जोड़ें () . पर कॉल करके वस्तु विधि कंटेनर . से विरासत में मिली है कक्षा। paintComponent() JPanel . पर कुछ आकर्षित करने क