Mikä on Java-etämenetelmäkutsu?



Tämä Java-käyttöliittymän RMI-artikkeli kertoo käytännön esimerkin, miten etämetodin kutsurajapinta otetaan käyttöön asiakkaan ja palvelimen välillä.

Etämenetelmän kutsu on tapa, jota ohjelmoija käyttää ja sen kehitysympäristö etänä. Sen kaikki siitä, miten esineitä eri tietokoneissa ovat vuorovaikutuksessa hajautetussa verkossa. Tässä artikkelissa Javan etämenetelmäkutsu kerron sinulle, miten luodaan RMI-sovellus asiakkaan ja palvelimen välillä.

Tässä artikkelissa käsitellään seuraavia aiheita:





Aloitetaan!

Mikä on Java-RMI?

RMI (Remote Method Invocation) on sovellusliittymä, joka tarjoaa mekanismin hajautetun sovelluksen luomiseen . RMI sallii objektin kutsua menetelmiä toisessa käynnissä olevalle objektille . Etämenetelmäkutsu tarjoaa etäyhteyden sovellusten välillä käyttäen kahta kohdetta tynkä ja luuranko- .



Ymmärtäminen tynkä ja luuranko

Asiakaskoneen tynkä-objekti rakentaa tietolohkon ja lähettää nämä tiedot palvelimelle. Lohko koostuu:

  • Käytettävän etäobjektin tunniste
  • Menetelmän nimi, johon on vedettävä
  • JVM-kaukosäätimen parametrit

Tynkä ja luuranko - RMI Java - EdurekaLuuranko-esine

Luuranko-objekti siirtää pyynnön tynkä-objektilta etäobjektiin. Se suorittaa seuraavat tehtävät:



Anna tämän siirtyä eteenpäin ja nähdä, miten RMI-sovellus luodaan

Vaiheet RMI-sovelluksen luomiseen

Seuraavat vaiheet auttavat sinua luomaan RMI-sovelluksen:

  1. Kaukosäätimen määritteleminen käyttöliittymä
  2. Etärajapinnan toteuttaminen
  3. Tynkä ja luuranko esineitä toteutusluokasta RMIC: n (RMI-yhteensopiva) avulla
  4. Käynnistä RMI-rekisteri
  5. Luo ja suorita palvelinsovellusohjelma
  6. Luo ja suorita asiakassovellusohjelma

Tarkastellaan nyt näiden vaiheiden yksityiskohtia.

Vaihe 1: Etärajapinnan määrittäminen

Ensimmäinen asia, joka meidän on tehtävä, on luoda käyttöliittymä . Tämä antaa kuvauksen menetelmistä, joihin etäasiakkaat voivat vedota. Tämän liitännän tulisi laajentaa etäkäyttöliittymää ja menetelmän prototyypin rajapinnassa tulisi heittää RemoteException.

// Hakurajapinnan luominen tuo java.rmi. * Julkinen käyttöliittymä Haku laajentaa kauko-ohjelmaa {// Menetelmän prototyypin julistaminen julkinen merkkikysely (merkkijonohaku) heittää RemoteExceptionin}

Vaihe 2: Etärajapinnan toteutus

Seuraava vaihe on toteuttaa etäkäyttöliittymä. Etäkäyttöliittymän toteuttamiseksi luokan tulisi ulottua Java.rmi-paketin UnicastRemoteObject-luokka . Myös oletuksena rakentaja on luotava heittää java.rmi.RemoteException sen vanhemmalta rakentajalta.

// Java-ohjelma hakuliittymän toteuttamiseksi tuo java.rmi. * Tuo java.rmi.server. * Julkinen luokka SearchQuery laajentaa UnicastRemoteObject-sovellusta Search {// Oletuskonstruktori heittää RemoteException vanhemmalta konstruktoriltaan SearchQuery () heittää RemoteException {super )} // Kyselykäyttöliittymän julkisen merkkijonokyselyn (merkkijonohaku) toteutus heittää RemoteExceptionin {String result if (search.equals ('Reflection in Java')) result = 'true' else result = 'false' return result}}

Vaihe 3: Stub- ja Skeleton-objektien luominen toteutusluokalta rmicin avulla

RMIC-työkalua käytetään RMI-kääntäjän kutsumiseen, joka luo Stub- ja Skeleton-objektit. Sen prototyyppi on RMIC-luokan nimi.

VAIHE 4: Käynnistä RMI-rekisteri
Sinun on käynnistettävä rekisteripalvelu antamalla komento komentokehotteessa Käynnistä RMIregistry

VAIHE 5: Luo ja suorita palvelinsovellusohjelma
Seuraava vaihe on luoda palvelinsovellusohjelma ja suorittaa se erillisellä komentokehotteella.

  • Palvelinohjelma käyttää createRegistry LocateRegistry-luokan menetelmä luoda rmiregistry palvelimen JVM: ään argumenttina lähetetyn portin numeron kanssa.

  • Naming-luokan uudelleenkytkentämenetelmää käytetään sitomaan etäobjekti uuteen nimeen.

// palvelinsovelluksen ohjelma tuo java.rmi. * tuo java.rmi.registry. * public class SearchServer {public static void main (String args []) {yritä {// Luo rajapinnan toteutusluokan objekti Search obj = uusi SearchQuery () // rmiregistry palvelimen JVM: ssä // porttinumero 1900 LocateRegistry.createRegistry (1900) & ltp style = 'text-align: justify' & gt // Sitoo etäobjektin nimellä // edureka Naming.rebind ( 'rmi: // localhost: 1900' + '/ edureka', obj)} catch (Poikkeus ae) {System.out.println (ae)}}}

Vaihe 6: Luo ja suorita Client Application -ohjelma
Viimeinen vaihe on luoda Client Application -ohjelma ja suorittaa se erillisellä komentokehotteella. Stub-objektin viitteen saamiseksi käytetään luokan nimeämistapaa

Yllä oleva asiakas- ja palvelinohjelma suoritetaan samalla koneella, ja siksi paikallista isäntää käytetään. Etäobjektin käyttämiseksi toiselta koneelta paikallinen isäntä on korvattava IP-osoitteella, jolla etäobjekti on.

Joten tämä vie meidät RMI: n loppuun vuonna artikla. Toivon, että pidit siitä informatiivisena ja auttoi sinua ymmärtämään perusteet.

Katso Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Olemme täällä auttaaksemme sinua matkasi jokaisessa vaiheessa, jotta tulemme tämän java-haastattelukysymyksen lisäksi, keksimme opetussuunnitelman, joka on tarkoitettu opiskelijoille ja ammattilaisille, jotka haluavat olla Java Kehittäjä. Kurssi on suunniteltu antamaan sinulle etumatka Java-ohjelmointiin ja kouluttamaan sekä ydin- että edistyneitä Java-konsepteja sekä erilaisia ​​Java-kehyksiä, kuten Hibernate & Spring.

Onko sinulla kysymys meille? Mainitse se tämän 'RMI in Java' -artikkelin kommenttiosassa ja otamme sinuun yhteyttä mahdollisimman pian.