Mis on Java-meetodi kaugmeetodi kutsumine?



See Java-i RMI-i artikkel annab teile praktilise näite, kuidas rakendada kaugmeetodi esilekutsumisliidest kliendis ja serveris.

Kaugmeetodi kutsumine on viis, mida programmeerija kasutab ja selle arengukeskkond eemalt. Selle kõik sellest, kuidas objektid erinevates arvutites suhtlevad hajutatud võrgus. Selles Java-meetodi kaugmeetodi esilekutsumist käsitlevas artiklis ütlen teile, kuidas RMI-rakendust kliendis ja serveris luua.

Selles artiklis käsitletakse järgmisi teemasid:





Alustame!

Mis on Java-s RMI?

The RMI [Remote Method Invocation] on API, mis pakub mehhanismi jaotatud rakenduse loomiseks . RMI võimaldab objektil kutsuda meetodeid teises töötavas objektis . Kaugmeetodi kutsumine pakub rakenduste vahel kaugsidet, kasutades kahte objekti tupik ja luustik .



Stubi ja luustiku mõistmine

Kliimasina tüviobjekt ehitab infobloki ja saadab selle teabe serverisse. Plokk koosneb:

  • Kasutatava kaugobjekti identifikaator
  • Meetodi nimi, millele tuleb pöörduda
  • JVM-i parameetrid

Stub ja Skeleton - Java-RMI - EdurekaSkeletiobjekt

Skeletiobjekt edastab päringu objekti objektilt kaugobjektile. Ta täidab järgmisi ülesandeid:



massiivi pikkus javascriptis
  • See kutsub soovitud meetodi serveris olevale reaalsele objektile.

  • See edastab stub-objektilt saadud parameetrid meetodile.

Selle abil laske edasi liikuda ja vaadake, kuidas RMI-rakendust luua

RMI-rakenduse loomise sammud

Allpool toodud sammud aitavad teil luua RMI-rakendust:

  1. Puldi määratlemine liides
  2. Kaugliidese juurutamine
  3. Tüve ja luustiku loomine objektid juurutusklassi juurest, kasutades RMIC-i (RMI-vastane)
  4. Käivitage RMI register
  5. Looge ja käivitage serverirakenduse programm
  6. Looge ja käivitage kliendirakenduse programm

Läheme nüüd nende sammude üksikasjadesse.

1. samm: kaugliidese määratlemine

Esimene asi, mida peame tegema, on luua liides . See annab meetodite kirjelduse, mida kaugkliendid saavad kasutada. See liides peaks laiendama kaugliidest ja liidese meetodi prototüüp peaks kaugjuhtimispuldi viskama.

// Otsingu liidese loomine import java.rmi. * Avalik liides Otsing laiendab kaugjuhtimist {// Meetodi prototüübi deklareerimine public String Query (String search) viskab RemoteException}

2. samm: kaugliidese juurutamine

Järgmine samm on kaugliidese juurutamine. Kaugliidese rakendamiseks peaks klass laienema ka Java.rmi paketi klass UnicastRemoteObject . Samuti vaikimisi ehitaja tuleb luua, et visata java.rmi.RemoteException selle vanemkonstruktorilt.

// Java-liides rakenduse Search liidese importimiseks java.rmi. * Import java.rmi.server. * Public class SearchQuery laiendab UnicastRemoteObject rakendab otsingut {// Vaikekonstruktor, et visata oma vanemast konstruktorist RemoteException SearchQuery () viskab RemoteException {super ( )} // Päringuliidese avaliku stringipäringu (stringiotsing) juurutamine loob RemoteExceptioni {String result if (search.equals ('Reflection in Java')) result = 'true' else result = 'false' return result}}

3. samm: rakenduse klassist Stub ja Skeleton objektide loomine rmici abil

RMIC-tööriista kasutatakse RMI-kompilaatori kutsumiseks, mis loob objektid Stub ja Skeleton. Selle prototüüp on RMIC-klassi nimi.

mis on java jaoks parim idee

4. SAMM: käivitage RMI-register
Registriteenus tuleb käivitada, väljastades käsu käsureal käivitada RMIregistry

5. SAMM: Looge ja käivitage serverirakenduse programm
Järgmine samm on luua serverirakenduse programm ja käivitada see eraldi käsuviibal.

  • Serveriprogramm kasutab createRegistry klassi LocateRegistry meetod serveri JVM-is rmiregistry loomiseks argumendina edastatud pordinumbriga.

  • Klassi nimetamise taasesitusmeetodit kasutatakse kaugobjekti sidumiseks uue nimega.

    on-suhe java
// serverirakenduse programm import java.rmi. * import java.rmi.registry. * public class SearchServer {public static void main (String args []) {proovige {// luua liidese juurutusklassi objekt Otsing obj = uus SearchQuery () // serveri JVM rmiregistry // pordinumbriga 1900 LocateRegistry.createRegistry (1900) & ltp style = 'text-align: justify' & gt // Seob kaugobjekti nimega // edureka Naming.rebind ( 'rmi: // localhost: 1900' + '/ edureka', obj)} saak (erand ae) {System.out.println (ae)}}}

6. samm: looge ja käivitage klientrakenduse programm
Viimane samm on luua klientrakenduse programm ja käivitada see eraldi käsuviibal. Stub-objekti viite saamiseks kasutatakse klassi Naming otsimismeetodit

Ülaltoodud kliendi- ja serveriprogramm käivitatakse ühes ja samas masinas ning seetõttu kasutatakse localhostit. Teisest masinast kaugobjektile juurde pääsemiseks tuleb localhost asendada IP-aadressiga, kus kaugobjekt asub.

Nii et see viib meid RMI lõppu aastal artikkel. Loodan, et leidsite selle informatiivseks ja aitasite teil põhialustest aru saada.

Vaadake autor Edureka, usaldusväärne veebiõppeettevõte, mille võrgustik koosneb enam kui 250 000 rahulolevast õppijast ja mis levib üle kogu maailma. Oleme siin, et aidata teil igal sammul teie teekonnal, et saada javaintervjuu küsimustele lisaks, pakume välja õppekava, mis on mõeldud üliõpilastele ja spetsialistidele, kes soovivad olla Java Arendaja. Kursus on loodud selleks, et anda teile Java-programmeerimises alustamine ja õpetada teid nii Java-põhiprogrammide kui ka täiustatud kontseptsioonide ning erinevate Java-raamistike jaoks, nagu Hibernate & Spring.

Kas teil on meile küsimus? Palun mainige seda selle artikli RMI Java-s kommentaaride jaotises ja me pöördume teie poole niipea kui võimalik.