Realizarea unei aplicații care să folosească serviciul Java RMI presupune dezvoltarea unei aplicații care să permită apelarea metodelor la distanță,… [612211]

CAP. I. – JAVA RMI

II.1 – INTRODUCERE

Realizarea unei aplicații care să folosească serviciul Java RMI presupune dezvoltarea
unei aplicații care să permită apelarea metodelor la distanță, adică implementarea unei
aplicații client -server. Aplicațiile client -server sunt aplicații distribuite care partajează
procesarea între furnizorii de servicii numiți servere și elementele care solicită servicii, numite
clienți.

Clienții și serv erele comunică printr -o rețea de calculatoare, de multe ori prin Internet.
Serverele așteaptă conexiuni din partea aplicației client. Aplicațiile server și client pot rula pe
același calculator sau pot, la fel de bine, rula pe calculatoare diferite. Folosi nd serviciul Java
RMI, pentru a realiza un apel către un obiect aflat la distanță, clientul caută mai întâi o
referință la obiectul respectiv în registru.

Dacă această referință la obiectul de pe server există, registrul o pune la dispoziția
clientului, care poate apela orice metodă care face parte din interfața publică a obiectului.

Înainte ca RMI să apară însă, existau deja câteva metode bine cunoscute și cercetate
de comunicare inter -proces: comunicarea prin socket și RPC (Remote Procedure Call).
Tehn ologia RMI este un descendent direct al RPC. Astfel, dacă folosim o platformă
orientată obiect și în RPC înlocuim subrutinele cu metode ale obiectelor ceea ce obținem este
o implementare RMI. Vedem astfel că trecerea de la RPC la RMI a fost necesară din ca uza
introducerii paradigmei de programare orientată obiect.

Serviciul RMI oferă anumite avantaje față de RPC. Prin RMI este posibilă
transmiterea de obiecte ca parametri actuali și valori de retur, ca de exemplu tabele de
dispersie, față de tehnologiile RPC clasice, care necesită descompunerea în tipuri primitive a
structurilor și apoi reconstrucția lor pe server. Un alt avantaj este acela că serviciul RMI
utilizează mecanismele de securitate implementate în platforma Java.

O aplicație care folosește me canismul Java RMI poate avea ca scop simularea unui
serviciul bancar online, dar trebuie să utilizeze și o bază de date.
În fiecare domeniu există aplicații care folosesc baze de date pentru a păstra informații care
vor fi ulterior folosite. Bazele de date fac parte și din domeniul informaticii, ajutând
programatorii să țină evidența datele pe care le prelucrează.

Pentru sistemele bancare bazele de date sunt văzute asemănător unor dosare. Pentru
fiecare client există un dosar în care se găsesc informații despre el. În baza de date se
păstrează datele cele mai importante

– BIBLIOGRAFIE –

1. Andrei Ștefan, Olaru Cristian, Tănasă Ștefan – Java de la 0 la expert , Polirom, 2003.
2. Bates Bert, Sierra Kathy – Atac la Java , Editura Teora, Bucuresti, 2006
3. Despi Ioan , Petrov Gheorghe, Reisz Robert – Teoria Generala A Bazelor De Date ,

Editura Mirton, Timișoara, 2002.
4. Eckstein Robert , Elliott James , Loy Marc , Wood David – Java Swing, 2002
5. Grosso William – Java RMI , O’Relly, 2001
6. Ionescu Felicia – Baze De Date Relaționale și Aplicații , Editura Tehnică, București,
2004
7. Jurca Ioan – Programarea rețelelor de calculatoare , Editura de Vest, Timișoara,
2001.
8. McNiff Kathleen, Pitt Esmond – java(TM).rmi: The Remote Method Invocation
Guide , 2001.
9. Java Distributed Computing – Jim Farley – Oreilly – 1998
10. Enterprise Cloud Computing – Gautam Shroff – 2013
11. Java RMI – Remote Met hod Invocation – Addison -Wesley professional – 2011
12. Java Deep Learning Essentials – Yusuke Sugomori – Packt – 2016
13. http://control.aut.utcluj.ro/scd/lab4/distributedObjects.htm
14. http://docs.oracle.com/javase/1.5.0/docs/guide/rmi/relnotes.html
15. http://docs.ora cle.com/javase/tutorial/onlineTraining/rmi/RMI.html
16. http://en.wikipedia.org/wiki/Java_RMI
17. http://en.wikipedia.org/wiki/Java_remote_method_invocation
18. http://liis.is.edu.ro/~doinah/informatica/RMI_CORBA
http://www.cs.swan.ac.uk/~csneal/InternetComputing/RM2.html

Similar Posts