কম্পিউটার

জাভাতে রিমোট পদ্ধতিতে ডেটা কীভাবে পাঠাবেন?


RMI মানে রিমোট মেথড ইনভোকেশন . এটি এমন একটি প্রক্রিয়া যা একটি সিস্টেমে (JVM) অবস্থানকারী একটি বস্তুকে অন্য JVM-এ চলমান একটি বস্তুকে অ্যাক্সেস/আমন্ত্রণ করতে দেয়।

RMI বিতরণ করা অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়; এটি জাভা প্রোগ্রামগুলির মধ্যে দূরবর্তী যোগাযোগ প্রদান করে। এটি java.rmi প্যাকেজে দেওয়া আছে .

একটি RMI জাভা অ্যাপ্লিকেশন লিখতে, আপনাকে নীচে দেওয়া ধাপগুলি অনুসরণ করতে হবে -

ধাপ 1 - দূরবর্তী ইন্টারফেস সংজ্ঞায়িত করুন

একটি দূরবর্তী ইন্টারফেস একটি নির্দিষ্ট দূরবর্তী বস্তুর সমস্ত পদ্ধতির বিবরণ প্রদান করে। ক্লায়েন্ট এই দূরবর্তী ইন্টারফেসের সাথে যোগাযোগ করে। অতএব, আপনাকে একটি ইন্টারফেস তৈরি করতে হবে যা পূর্বনির্ধারিত ইন্টারফেস, java.rmi কে প্রসারিত করে।রিমোট .

উদাহরণ

import java.rmi.Remote;
import java.rmi.RemoteException;
public interface Hello extends Remote {
   void printMsg() throws RemoteException;
}

ধাপ 2 - ইমপ্লিমেন্টেশন ক্লাস ডেভেলপ করুন (রিমোট অবজেক্ট)

আমাদের পূর্বের ধাপে তৈরি রিমোট ইন্টারফেস বাস্তবায়ন করতে হবে। (আমরা আলাদাভাবে একটি বাস্তবায়ন ক্লাস লিখতে পারি বা আমরা সরাসরি সার্ভার প্রোগ্রামটিকে এই ইন্টারফেসটি বাস্তবায়ন করতে পারি।) তাই, দূরবর্তী ইন্টারফেসের সমস্ত বিমূর্ত পদ্ধতিতে বাস্তবায়ন প্রদান করুন।

উদাহরণ

public class ImplExample implements Hello {
   public void printMsg() {
      System.out.println("This is an example RMI program");
   }
}

ধাপ 3 - সার্ভার প্রোগ্রাম বিকাশ করুন

একটি RMI সার্ভার প্রোগ্রাম দূরবর্তী ইন্টারফেস বাস্তবায়ন বা, বাস্তবায়ন শ্রেণী প্রসারিত করা উচিত. এখানে, আমাদের একটি দূরবর্তী বস্তু তৈরি করা উচিত এবং এটিকে RMIregistry এর সাথে আবদ্ধ করা উচিত . অতএব, নীচে দেখানো হিসাবে একটি সার্ভার প্রোগ্রাম বিকাশ করুন -

উদাহরণ

import java.rmi.registry.Registry;
import java.rmi.registry.LocateRegistry;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
public class Server extends ImplExample {
   public Server() {}
   public static void main(String args[]) {
      try {
         ImplExample obj = new ImplExample();
         Hello stub = (Hello) UnicastRemoteObject.exportObject(obj, 0);
         Registry registry = LocateRegistry.getRegistry();
         registry.bind("Hello", stub);
         System.err.println("Server ready");
      } catch (Exception e) {
         System.err.println("Server exception: " + e.toString());
         e.printStackTrace();
      }
   }
}

ধাপ 4 - ক্লায়েন্ট প্রোগ্রাম বিকাশ করুন

এতে একটি ক্লায়েন্ট প্রোগ্রাম লিখুন, রিমোট অবজেক্ট আনুন এবং এই অবজেক্টটি ব্যবহার করে প্রয়োজনীয় পদ্ধতি চালু করুন।

উদাহরণ

import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
public class Client {
   private Client() {}
   public static void main(String[] args) {
      try {
         Registry registry = LocateRegistry.getRegistry(null);
         Hello stub = (Hello) registry.lookup("Hello");
         stub.printMsg();
      } catch (Exception e) {
         System.err.println("Client exception: " + e.toString());
         e.printStackTrace();
      }
   }
}

ধাপ 5 - অ্যাপ্লিকেশন কম্পাইল করুন

অ্যাপ্লিকেশন কম্পাইল করতে -

  • রিমোট ইন্টারফেস কম্পাইল করুন।

  • বাস্তবায়ন ক্লাস কম্পাইল করুন।

  • সার্ভার প্রোগ্রাম কম্পাইল করুন।

  • ক্লায়েন্ট প্রোগ্রাম কম্পাইল করুন।

ধাপ 6 - অ্যাপ্লিকেশনটি চালান

  • rmi শুরু করুন নিম্নলিখিত কমান্ড ব্যবহার করে রেজিস্ট্রি।

Start rmiregistry

এটি একটি rmi শুরু করবে৷ একটি পৃথক উইন্ডোতে রেজিস্ট্রি।

  • নীচে দেখানো হিসাবে সার্ভার ক্লাস ফাইল চালান -

জাভাতে রিমোট পদ্ধতিতে ডেটা কীভাবে পাঠাবেন?

  • নীচে দেখানো হিসাবে ক্লায়েন্ট ক্লাস ফাইল চালান -

জাভাতে রিমোট পদ্ধতিতে ডেটা কীভাবে পাঠাবেন?

  • যাচাই − যত তাড়াতাড়ি আপনি ক্লায়েন্ট শুরু করবেন, আপনি সার্ভারে নিম্নলিখিত আউটপুট দেখতে পাবেন।

জাভাতে রিমোট পদ্ধতিতে ডেটা কীভাবে পাঠাবেন?


  1. জাভাতে একটি CSV ফাইল থেকে ডেটা কীভাবে পড়তে হয়?

  2. জাভাতে একটি বৈশিষ্ট্য ফাইল থেকে ডেটা কীভাবে পড়তে হয়?

  3. জাভাতে একটি JList আইটেম নির্বাচন করার সময় একটি মান কিভাবে প্রদর্শন করবেন?

  4. কিভাবে আমরা জাভাতে একটি JPanel এর paintComponent() পদ্ধতি প্রয়োগ করতে পারি?